/*
 * @Author       : NaN 353362604@qq.com
 * @Date         : 2023-01-12 09:35:49
 * @LastEditTime: 2023-04-23 18:45:13
 * @LastEditors: 飞越疯人院 353362604@qq.com
 * @FilePath     : \AdminStration\src\Pages\Front\Common\LargeScreen\TableMapping.jsx
 */
// 配置大屏table动态参数值

import { Button } from 'antd'
import { API_LIST } from '../../../../Common/Api/Api'
import { setFieldPropsOptions, setValueEnumData, setSelectSort } from '../../../../Common/Router/MenuBoxList'
import { commonTableList, BuiltInData } from '../../../../Common/Modal/config'
import { TableViewAttachmentsBtn, InspectionDetailsBtn } from './ButtonList'
import { ApiAttachmentButton } from '../../Common/LargeScreen/AttachmentWindow'
import dayjs from 'dayjs'
import axios from 'axios'

import { PersonTypeTree, FrontOrganizations } from '../../../../Common/Router/MenuNav/Common/Conversion'

// 文件柜
const securitySlopeLeft = async ({ uuid, className, other }) => {
    let data = {
        pageSize: 10,
        params: {
            pageIndex: 1,
            infoTypeManageUuid: uuid,
            OOrganizationName: 'asc@2',
            OEventDate: 'desc@1',
            ApprovalStatus: 2,
        },
        get: API_LIST()[`getConstructionInfoManageStat`],
        columns: [
            commonTableList.uuid,
            {
                dataIndex: 'projectUuid',
                title: '项目名称',
                valueType: 'select',
                valueEnum: {},
                align: 'center',
                width: 150,
                ellipsis: true,
                hideInTable: other?.Project ? false : true,
                hideInSearch: other?.Project ? false : true,
            },
            { ...commonTableList.tableName, title: '主题', align: 'center' },
            {
                dataIndex: 'infoTypeManageUuid',
                title: '文件类型',
                valueType: 'treeSelect',
                initialValue: uuid,
                fieldProps: {
                    options: [],
                    fieldNames: { label: 'tableName', value: 'uuid' },
                },
                rules: true,
                align: 'center',
                hideInSearch: true,
                width: 200,
            },
            { ...commonTableList.organizationUuid, valueEnum: {}, align: 'center', hideInTable: true },

            {
                dataIndex: 'organizationName',
                title: '组织机构',
                valueType: 'input',
                align: 'center',
                width: 200,
                hideInSearch: true,
            },

            {
                dataIndex: 'approvalStatus',
                title: '审核状态',
                valueType: 'select',
                valueEnum: BuiltInData.ReviewStatus,
                hideInAdded: true,
                hideInModify: true,
                align: 'center',
                width: 100,
            },
            {
                dataIndex: 'eventDate',
                title: '事件日期',
                valueType: 'Date',
                showTime: true,
                align: 'center',
                width: 200,
                hideInSearch: true,
            },
            { ...commonTableList.remark, align: 'center' },
            { ...commonTableList.createUserName, align: 'center' },
            { ...commonTableList.createTime, align: 'center' },
            { ...commonTableList.updateUserName, align: 'center' },
            { ...commonTableList.updateTime, align: 'center' },
            commonTableList.StartTime,
            commonTableList.EndTime,
            {
                title: '操作',
                valueType: 'systemOperation',
                fixed: 'right',
                align: 'center',
                width: 100,
                hideInSearch: true,
                hideInAdded: true,
                hideInModify: true,
                render: (_, record) => {
                    return [
                        <TableViewAttachmentsBtn
                            key="ViewAttachmentsBtn"
                            data={record}
                            title="查看附件"
                            className={className}
                            api="getConstructionInfoManageDetail"
                            params={{ InfoManageUuid: record.uuid }}
                        />,
                    ]
                },
            },
        ],
    }

    data.columns.find(v => v.dataIndex === 'infoTypeManageUuid').fieldProps.options = await setFieldPropsOptions({
        url: 'getInfoTypeManage',
        path: [`?ParentUuid=${uuid}`],
    })
    data.columns.find(v => v.dataIndex === 'organizationUuid').valueEnum = await setValueEnumData({
        url: 'getOrganizations',
    })
    data.columns.find(v => v.dataIndex === 'projectUuid').valueEnum = await setValueEnumData({
        url: 'getProjectList',
    })
    if (other?.Project && other?.Active && other.Active !== 'all') {
        data.params.ProjectUuid = other.Active
    }
    return data
}

const MeterageAttachmentTableList = ({ className, other }) => {
    const ClientData = JSON.parse(localStorage.getItem('ClientData'))
    let data = {
        pageSize: 10,
        params: { pageIndex: 1, organizationUuid: other.id },
        get: API_LIST()[`getMeterage`],
        columns: [
            commonTableList.uuid,
            {
                ...commonTableList.tableName,
                render: (_, e) => (
                    <div>
                        {ClientData.organization[e.organizationUuid]}
                        {e.yearMonth}计量
                    </div>
                ),
                align: 'center',
            },
            {
                dataIndex: 'yearMonth',
                title: '年月',
                valueType: 'input',
                align: 'center',
                width: 200,
            },
            {
                title: '操作',
                valueType: 'systemOperation',
                fixed: 'right',
                align: 'center',
                width: 100,
                hideInSearch: true,
                hideInAdded: true,
                hideInModify: true,
                render: (_, record) => {
                    return [
                        <TableViewAttachmentsBtn
                            key="ViewAttachmentsBtn"
                            data={record}
                            title="查看附件"
                            className={className}
                            api="getMeterageAttachment"
                            params={{ meterageUuid: record.uuid }}
                        />,
                    ]
                },
            },
        ],
    }
    return data
}
const PlanStatAttachmentTableList = ({ className, other }) => {
    const ClientData = JSON.parse(localStorage.getItem('ClientData'))
    const planOrStatList = { 3: '总体计划', 2: '年计划', 0: '月计划', 1: '月统计' }
    let data = {
        pageSize: 10,
        params: { pageIndex: 1, organizationUuid: other.id },
        get: API_LIST()[`getPlanStat`],
        columns: [
            commonTableList.uuid,
            {
                ...commonTableList.tableName,
                render: (_, e) => (
                    <div>
                        {ClientData.organization[e.organizationUuid]}
                        {planOrStatList[e.planOrStat]}
                        {e.yearMonth}
                    </div>
                ),
                align: 'center',
            },
            {
                dataIndex: 'yearMonth',
                title: '年月',
                valueType: 'input',
                align: 'center',
                width: 200,
            },
            {
                title: '操作',
                valueType: 'systemOperation',
                fixed: 'right',
                align: 'center',
                width: 100,
                hideInSearch: true,
                hideInAdded: true,
                hideInModify: true,
                render: (_, record) => {
                    return [
                        <TableViewAttachmentsBtn
                            key="ViewAttachmentsBtn"
                            data={record}
                            title="查看附件"
                            className={className}
                            api="getPlanStatAttachment"
                            params={{ planStatUuid: record.uuid }}
                        />,
                    ]
                },
            },
        ],
    }
    return data
}

// 月报
const ProjectCompanyMonthReport = async ({ uuid, className }) => {
    let data = {
        pageSize: 10,
        params: { pageIndex: 1, organizationUuid: uuid },
        get: API_LIST()[`getProjectCompanyMonthReport`],
        columns: [
            commonTableList.uuid,
            { ...commonTableList.tableName, title: '主题', align: 'center' },
            { ...commonTableList.createTime, align: 'center' },
            {
                title: '操作',
                valueType: 'systemOperation',
                fixed: 'right',
                align: 'center',
                width: 100,
                hideInSearch: true,
                hideInAdded: true,
                hideInModify: true,
                render: (_, record) => {
                    const { projectCompanyMonthReportAttachments } = record
                    return [
                        projectCompanyMonthReportAttachments.length !== 0 ? (
                            <ApiAttachmentButton
                                key="ApiAttachmentButton"
                                data={{
                                    url: 'getProjectCompanyMonthReportAttachment',
                                    className: 'BaDaItemTitle',
                                    param: 'ProjectCompanyMonthReportUuid',
                                    title: '月报详情',
                                    uuid: record.uuid,
                                }}
                            />
                        ) : (
                            <div key="none" style={{ color: '#FF6D2D' }}>
                                未上传
                            </div>
                        ),
                    ]
                },
            },
        ],
    }

    return data
}

// 拌合站出料明细
const SecondaryCementMixPlat = async ({ uuid }) => {
    let data = {
        pageSize: 10,
        params: { pageIndex: 1, OrganizationUuid: uuid },
        get: API_LIST()[`getCementMixingStations`],
        columns: [
            commonTableList.uuid,
            {
                title: '工程名称',
                dataIndex: 'projectName',
                ellipsis: true,
                valueType: 'select',
                valueEnum: {},
                search: false,
                align: 'center',
            },
            {
                title: '施工地点',
                dataIndex: 'constructionSite',
                ellipsis: true,
                search: false,
                align: 'center',
            },
            {
                title: '浇筑部位',
                dataIndex: 'pouringPosition',
                ellipsis: true,
                search: false,
                align: 'center',
            },
            {
                title: '任务单号',
                dataIndex: 'taskId',
                ellipsis: true,
                search: false,
                align: 'center',
            },
            {
                title: '出料时间',
                dataIndex: 'dischargingTime',
                valueType: 'dateTime',
                ellipsis: true,
                search: false,
                align: 'center',
            },
            {
                title: '施工配合比编号',
                dataIndex: 'proportionOperId',
                ellipsis: true,
                search: false,
                align: 'center',
            },
            {
                title: '强度等级',
                dataIndex: 'strengthGrade',
                ellipsis: true,
                search: false,
                align: 'center',
            },
            {
                title: '操作人',
                dataIndex: 'operator',
                ellipsis: true,
                search: false,
                align: 'center',
            },
            {
                title: '实际方量',
                dataIndex: 'quantityAct',
                ellipsis: true,
                search: false,
                align: 'center',
            },
            {
                title: '搅拌时长',
                dataIndex: 'mixingDuration',
                ellipsis: true,
                search: false,
                align: 'center',
            },
            {
                title: '是否超标',
                dataIndex: 'excessState',
                valueType: 'select',
                valueEnum: BuiltInData.excessState,
                ellipsis: true,
                search: false,
                align: 'center',
            },
            commonTableList.StartTime,
            commonTableList.EndTime,
        ],
    }
    return data
}

// 梁片年生产能力 (统计)
const SecondaryGetBeamProduceSum = async ({ uuid }) => {
    let data = {
        pageSize: 10,
        params: { pageIndex: 1, OrganizationUuid: uuid },
        get: API_LIST()[`getGetBeamProduceSum`],
        columns: [
            {
                title: '组织机构',
                dataIndex: 'organizationName',
                ellipsis: true,
                search: false,
            },
            {
                title: '桥名称',
                dataIndex: 'bridgeName',
                ellipsis: true,
            },
            {
                title: '部位',
                dataIndex: 'part',
                valueType: 'select',
                valueEnum: {
                    无: { text: '无' },
                    左幅: { text: '左幅' },
                    右幅: { text: '右幅' },
                },
                ellipsis: true,
            },
            {
                title: '总数',
                dataIndex: 'beamCount',
                ellipsis: true,
                search: false,
            },
            {
                title: '完成数量',
                dataIndex: 'beamProduceRecordEnd',
                ellipsis: true,
                search: false,
            },
            {
                title: '正在生产',
                dataIndex: 'beamProduceRecord',
                ellipsis: true,
                search: false,
            },
            {
                title: '未生产',
                dataIndex: 'unBeamProduceRecord',
                ellipsis: true,
                search: false,
            },
        ],
    }
    return data
}

// 片年生产明细 (明细)
const SecondaryGetBeamProduceRecords = async ({ uuid }) => {
    let data = {
        pageSize: 10,
        params: { pageIndex: 1, OrganizationUuid: uuid },
        get: API_LIST()[`getGetBeamProduceRecords`],
        columns: [
            {
                title: '组织机构',
                dataIndex: 'organizationName',
                ellipsis: true,
                search: false,
            },
            {
                title: '桥名称',
                dataIndex: 'bridgeName',
                ellipsis: true,
            },
            {
                title: '部位',
                dataIndex: 'part',
                valueType: 'select',
                valueEnum: {
                    0: { text: '无' },
                    1: { text: '左幅' },
                    2: { text: '右幅' },
                },
                ellipsis: true,
            },
            {
                title: '梁号',
                dataIndex: 'beamNo',
                ellipsis: true,
                search: false,
            },
            {
                title: '梁型',
                dataIndex: 'beamTypeName',
                ellipsis: true,
                search: false,
            },
            {
                title: '工序',
                dataIndex: 'processUuid',
                ellipsis: true,
                valueType: 'select',
                valueEnum: {},
            },
            {
                title: '台座',
                dataIndex: 'beamSeatName',
                ellipsis: true,
                search: false,
            },
            {
                title: '最后工序日期',
                dataIndex: 'produceDate',
                valueType: 'dateTime',
                ellipsis: true,
                search: false,
            },
            {
                title: '审核状态',
                dataIndex: 'auditStatus',
                ellipsis: true,
                search: false,
                valueType: 'select',
                valueEnum: {
                    '-1': { text: '销毁' },
                    0: { text: '检测中' },
                    1: { text: '合格' },
                    2: { text: '不合格' },
                },
            },
            {
                title: '开始日期',
                dataIndex: 'BeginProduce',
                valueType: 'dateTime',
                ellipsis: true,
                hideInTable: true,
            },
            {
                title: '结束日期',
                dataIndex: 'EndProduce',
                valueType: 'dateTime',
                ellipsis: true,
                hideInTable: true,
            },
        ],
    }
    return data
}

// 岗位统计
const SecondaryPersonnelTemplateNew = async ({ uuid }) => {
    let data = {
        pageSize: 10,
        params: { pageIndex: 1, StartDate: dayjs().format('YYYY-MM-DD'), EndDate: dayjs().format('YYYY-MM-DD') },
        get: API_LIST()[`getPersonAttendanceStat`],
        columns: [
            // { ...commonTableList.organizationUuid, valueEnum: ClientData.organization, align: 'center' },
            {
                title: '组织机构',
                dataIndex: ['person', 'organization', 'tableName'],
                ellipsis: true,
                search: false,
                align: 'center',
            },
            {
                title: '组织机构',
                dataIndex: 'organizationUuid',
                valueEnum: {},
                ellipsis: true,
                align: 'center',
                hideInTable: true,
            },
            {
                title: '人员类别',
                dataIndex: ['person', 'personType', 'fullName'],
                ellipsis: true,
                search: false,
                align: 'center',
            },
            // {
            //     dataIndex: 'personTypeUuid',
            //     title: '人员类别',
            //     valueType: 'treeSelect',
            //     fieldProps: {
            //         options: [],
            //         fieldNames: { label: 'tableName', value: 'uuid' },
            //     },
            //     rules: true,
            //     initialValue: uuid || null,
            //     hideInTable: true,
            //     width: 150,
            // },
            {
                title: '姓名',
                dataIndex: ['person', 'tableName'],
                ellipsis: true,
                search: false,
                align: 'center',
            },
            {
                title: '性别',
                dataIndex: 'gender',
                render: (_, e) => <div> {e.person.gender === 0 ? '女' : '男'} </div>,
                ellipsis: true,
                align: 'center',
                search: false,
            },
            {
                title: '最早时间',
                dataIndex: 'minTime',
                valueType: 'dateTime',
                ellipsis: true,
                search: false,
                align: 'center',
            },
            {
                title: '最晚时间',
                dataIndex: 'maxTime',
                valueType: 'dateTime',
                ellipsis: true,
                search: false,
                align: 'center',
            },
            {
                title: '人员姓名',
                dataIndex: 'personName',
                valueType: 'input',
                hideInTable: true,
                align: 'center',
            },
            // commonTableList.StartDate,
            // commonTableList.EndDate,
        ],
    }

    data.columns.find(v => v.dataIndex === 'organizationUuid').valueEnum = await setValueEnumData({
        url: 'getOrganizations',
    })
    return data
}

// 人员统计
const SecondaryPersonnelTemplate = async ({ other }) => {
    let data = {
        pageSize: 10,
        params: { pageIndex: 1, OOrganizationName: 'asc@1' },
        get: API_LIST()[`getGetPersonDetail`],
        columns: [
            {
                ...commonTableList.organizationUuid,
                valueEnum: await FrontOrganizations(),
                align: 'center',
                initialValue: other.org || null,
            },
            {
                dataIndex: 'personTypeUuid',
                title: '人员类别',
                valueType: 'treeSelect',
                fieldProps: {
                    options: await PersonTypeTree(),
                    fieldNames: { label: 'tableName', value: 'uuid' },
                },
                rules: true,
                initialValue: other.type || null,
                width: 150,
            },
            {
                title: '姓名',
                dataIndex: 'tableName',
                ellipsis: true,
                align: 'center',
            },
            {
                title: '性别',
                dataIndex: 'gender',
                render: (_, e) => <div> {e.gender === 0 ? '女' : '男'} </div>,
                ellipsis: true,
                align: 'center',
                search: false,
            },
            {
                title: '进场时间',
                dataIndex: 'createTime',
                valueType: 'dateTime',
                ellipsis: true,
                search: false,
                align: 'center',
            },
            // {
            //     title: '最早时间',
            //     dataIndex: 'minTime',
            //     valueType: 'dateTime',
            //     ellipsis: true,
            //     search: false,
            //     align: 'center',
            // },
            // {
            //     title: '最晚时间',
            //     dataIndex: 'maxTime',
            //     valueType: 'dateTime',
            //     ellipsis: true,
            //     search: false,
            //     align: 'center',
            // },
            // {
            //     title: '人员姓名',
            //     dataIndex: 'personName',
            //     valueType: 'input',
            //     hideInTable: true,
            //     align: 'center',
            // },
            commonTableList.StartDate,
            commonTableList.EndDate,
        ],
    }
    // data.columns.find(v => v.dataIndex === 'personTypeUuid').fieldProps.options = await setFieldPropsOptions({
    //     url: 'getPersonTypeTree',
    // })
    return data
}

// 安全人员统计
const SecondaryPersonnelTemplateTwo = async ({ uuid }) => {
    let data = {
        pageSize: 10,
        params: { pageIndex: 1, personTypeUuid: '821c0fac-5d99-4985-af96-db2329082938' },
        get: API_LIST()[`getPersonAttendanceStat`],
        columns: [
            {
                title: '组织机构',
                dataIndex: ['person', 'organization', 'tableName'],
                ellipsis: true,
                search: false,
                align: 'center',
            },
            {
                title: '人员类别',
                dataIndex: ['person', 'personType', 'fullName'],
                ellipsis: true,
                search: false,
                align: 'center',
            },
            {
                title: '姓名',
                dataIndex: ['person', 'tableName'],
                ellipsis: true,
                search: false,
                align: 'center',
            },
            {
                title: '性别',
                dataIndex: 'gender',
                render: (_, e) => <div> {e.person.gender === 0 ? '女' : '男'} </div>,
                ellipsis: true,
                align: 'center',
                search: false,
            },
            {
                title: '最早时间',
                dataIndex: 'minTime',
                valueType: 'dateTime',
                ellipsis: true,
                search: false,
                align: 'center',
            },
            {
                title: '最晚时间',
                dataIndex: 'maxTime',
                valueType: 'dateTime',
                ellipsis: true,
                search: false,
                align: 'center',
            },
            {
                title: '人员姓名',
                dataIndex: 'personName',
                valueType: 'input',
                hideInTable: true,
                align: 'center',
            },
            commonTableList.StartDate,
            commonTableList.EndDate,
        ],
    }

    return data
}

// 监理人员统计
const SecondaryPersonnelTemplateThr = async ({ uuid }) => {
    let data = {
        pageSize: 10,
        params: { pageIndex: 1, OrganizationUuid: uuid },
        get: API_LIST()[`getGetAttendancesList`],
        columns: [
            {
                title: '组织机构',
                dataIndex: ['person', 'organization', 'tableName'],
                ellipsis: true,
                search: false,
                align: 'center',
            },
            {
                title: '人员类别',
                dataIndex: ['person', 'personType', 'fullName'],
                ellipsis: true,
                search: false,
                align: 'center',
            },
            {
                title: '姓名',
                dataIndex: ['person', 'tableName'],
                ellipsis: true,
                search: false,
                align: 'center',
            },
            {
                title: '性别',
                dataIndex: 'gender',
                render: (_, e) => <div> {e.person.gender === 0 ? '女' : '男'} </div>,
                ellipsis: true,
                align: 'center',
                search: false,
            },
            {
                title: '最早时间',
                dataIndex: 'minTime',
                valueType: 'dateTime',
                ellipsis: true,
                search: false,
                align: 'center',
            },
            {
                title: '最晚时间',
                dataIndex: 'maxTime',
                valueType: 'dateTime',
                ellipsis: true,
                search: false,
                align: 'center',
            },
            {
                title: '人员姓名',
                dataIndex: 'personName',
                valueType: 'input',
                hideInTable: true,
                align: 'center',
            },
            commonTableList.StartDate,
            commonTableList.EndDate,
        ],
    }
    return data
}

// 测温情况
const SecondaryTemperatureTemplate = async ({ uuid }) => {
    const ClientData = JSON.parse(localStorage.getItem('ClientData'))
    let data = {
        pageSize: 10,
        params: { pageIndex: 1, OrganizationUuid: uuid },
        get: API_LIST()[`getGetAttendancesList`],
        columns: [
            {
                title: '组织机构',
                dataIndex: 'organizationUuid',
                ellipsis: true,
                valueType: 'select',
                align: 'center',
                initialValue: uuid,
                valueEnum: {},
            },
            {
                title: '时间',
                valueType: 'dateTime',
                dataIndex: 'attendanceTime',
                ellipsis: true,
                align: 'center',
                search: false,
            },
            {
                title: '人员类别',
                dataIndex: 'personTypeName',
                ellipsis: true,
                search: false,
                align: 'center',
            },
            {
                dataIndex: 'personTypeUuid',
                title: '人员类别',
                valueType: 'treeSelect',
                fieldProps: {
                    options: [],
                    fieldNames: { label: 'tableName', value: 'uuid' },
                },
                rules: true,
                hideInTable: true,
                width: 150,
            },
            {
                title: '体温',
                dataIndex: 'temperature',
                ellipsis: true,
                align: 'center',
                search: false,
            },
            {
                title: '姓名',
                align: 'center',
                dataIndex: 'personName',
                ellipsis: true,
            },
            {
                title: '打卡地址',
                align: 'center',
                dataIndex: 'address',
                ellipsis: true,
            },
            {
                title: '开始时间',
                valueType: 'dateTime',
                dataIndex: 'BeginAttendanceTime',
                ellipsis: true,
                align: 'center',
                hideInTable: true,
            },
            {
                title: '结束时间',
                valueType: 'dateTime',
                dataIndex: 'EndAttendanceTime',
                ellipsis: true,
                align: 'center',
                hideInTable: true,
            },

            {
                title: '体温情况',
                dataIndex: 'overTemperature',
                ellipsis: true,
                valueType: 'select',
                align: 'center',
                valueEnum: BuiltInData.overTemperature,
            },
        ],
    }
    data.columns.find(v => v.dataIndex === 'personTypeUuid').fieldProps.options = await setFieldPropsOptions({
        url: 'getPersonTypeTree',
    })

    data.columns.find(v => v.dataIndex === 'organizationUuid').valueEnum = await setValueEnumData({
        url: 'getOrganizations',
    })
    return data
}

// 高温情况
const SecondaryEpidemicTemplate = async ({ uuid }) => {
    const ClientData = JSON.parse(localStorage.getItem('ClientData'))
    let data = {
        pageSize: 10,
        params: { pageIndex: 1, overTemperature: 1, personName: uuid },
        get: API_LIST()[`getGetAttendancesList`],
        columns: [
            {
                title: '组织机构',
                dataIndex: 'organizationUuid',
                ellipsis: true,
                valueType: 'select',
                align: 'center',
                valueEnum: {},
            },
            {
                title: '时间',
                valueType: 'dateTime',
                dataIndex: 'attendanceTime',
                ellipsis: true,
                align: 'center',
                search: false,
            },
            {
                title: '人员类别',
                dataIndex: 'personTypeName',
                ellipsis: true,
                search: false,
                align: 'center',
            },
            {
                dataIndex: 'personTypeUuid',
                title: '人员类别',
                valueType: 'treeSelect',
                fieldProps: {
                    options: [],
                    fieldNames: { label: 'tableName', value: 'uuid' },
                },
                rules: true,
                hideInTable: true,
                width: 150,
            },
            {
                title: '体温',
                dataIndex: 'temperature',
                ellipsis: true,
                align: 'center',
                search: false,
            },
            {
                title: '姓名',
                align: 'center',
                dataIndex: 'personName',
                initialValue: uuid || '',
                ellipsis: true,
            },
            {
                title: '打卡地址',
                align: 'center',
                dataIndex: 'address',
                ellipsis: true,
            },
            {
                title: '开始时间',
                valueType: 'dateTime',
                dataIndex: 'BeginAttendanceTime',
                ellipsis: true,
                align: 'center',
                hideInTable: true,
            },
            {
                title: '结束时间',
                valueType: 'dateTime',
                dataIndex: 'EndAttendanceTime',
                ellipsis: true,
                align: 'center',
                hideInTable: true,
            },
            {
                title: '超温类型',
                dataIndex: 'overTemperatureType',
                valueType: 'select',
                valueEnum: {},
                align: 'center',
                ellipsis: true,
            },
        ],
    }
    data.columns.find(v => v.dataIndex === 'personTypeUuid').fieldProps.options = await setFieldPropsOptions({
        url: 'getPersonTypeTree',
    })
    data.columns.find(v => v.dataIndex === 'overTemperatureType').valueEnum = await setValueEnumData({
        url: 'getOverTemperatureType',
        path: [5],
    })

    data.columns.find(v => v.dataIndex === 'organizationUuid').valueEnum = await setValueEnumData({
        url: 'getOrganizations',
    })
    return data
}

// 监理工序列表
const SecondaryWorkingList = async ({ uuid, className }) => {
    const ClientData = JSON.parse(localStorage.getItem('ClientData'))
    let data = {
        pageSize: 10,
        params: { pageIndex: 1, approvalStatus: uuid },
        get: API_LIST()[`getSupervises`],
        columns: [
            { ...commonTableList.organizationUuid, valueEnum: {}, align: 'center' },
            {
                title: '主题',
                dataIndex: 'tableName',
                ellipsis: true,
                align: 'center',
            },
            {
                title: '工序类型',
                dataIndex: 'superviseTypeUuid',
                ellipsis: true,
                fieldProps: {
                    options: [],
                    fieldNames: { label: 'tableName', value: 'uuid' },
                },
                valueType: 'treeSelect',
                align: 'center',
            },
            {
                title: '审核状态',
                dataIndex: 'approvalStatus',
                valueType: 'select',
                initialValue: uuid || null,
                valueEnum: BuiltInData.approvalStatus,
                align: 'center',
            },
            {
                title: '创建姓名',
                dataIndex: 'createUserName',
                ellipsis: true,
                search: false,
                align: 'center',
            },
            {
                title: '创建时间',
                dataIndex: 'createTime',
                ellipsis: true,
                search: false,
                align: 'center',
            },
            {
                title: '审核人',
                dataIndex: 'approvalUserName',
                ellipsis: true,
                search: false,
                align: 'center',
            },
            {
                title: '审核时间',
                dataIndex: 'updateTime',
                ellipsis: true,
                search: false,
                align: 'center',
            },
            commonTableList.StartTime,
            commonTableList.EndTime,
            {
                title: '操作',
                valueType: 'systemOperation',
                fixed: 'right',
                align: 'center',
                width: 100,
                hideInSearch: true,
                hideInAdded: true,
                hideInModify: true,
                render: (_, record) => {
                    return [
                        <TableViewAttachmentsBtn
                            key="ViewAttachmentsBtn"
                            data={record}
                            title="查看附件"
                            className={className}
                        />,
                    ]
                },
            },
        ],
    }
    data.columns.find(v => v.dataIndex === 'organizationUuid').valueEnum = await setSelectSort({
        data: ClientData.organization,
    })

    data.columns.find(v => v.dataIndex === 'superviseTypeUuid').fieldProps.options = await setFieldPropsOptions({
        url: 'getSuperviseTypeTree',
    })
    return data
}

// 监理工序 - 工序统计
const SecondaryWorkingProcedure = async ({ uuid, className }) => {
    const ClientData = JSON.parse(localStorage.getItem('ClientData'))
    let data = {
        pageSize: 10,
        params: { pageIndex: 1 },
        get: API_LIST()[`getSupervises`],
        columns: [
            { ...commonTableList.organizationUuid, valueEnum: {}, align: 'center' },
            {
                title: '主题',
                dataIndex: 'tableName',
                ellipsis: true,
                align: 'center',
            },
            {
                title: '工序类型',
                dataIndex: 'superviseTypeUuid',
                ellipsis: true,
                fieldProps: {
                    options: [],
                    fieldNames: { label: 'tableName', value: 'uuid' },
                },
                initialValue: uuid || null,
                valueType: 'treeSelect',
                align: 'center',
            },
            {
                title: '审核状态',
                dataIndex: 'approvalStatus',
                valueType: 'select',
                valueEnum: BuiltInData.approvalStatus,
                align: 'center',
            },
            {
                title: '创建姓名',
                dataIndex: 'createUserName',
                ellipsis: true,
                search: false,
                align: 'center',
            },
            {
                title: '创建时间',
                dataIndex: 'createTime',
                ellipsis: true,
                search: false,
                align: 'center',
            },
            {
                title: '审核人',
                dataIndex: 'approvalUserName',
                ellipsis: true,
                search: false,
                align: 'center',
            },
            {
                title: '审核时间',
                dataIndex: 'updateTime',
                ellipsis: true,
                search: false,
                align: 'center',
            },
            commonTableList.StartTime,
            commonTableList.EndTime,
            {
                title: '操作',
                valueType: 'systemOperation',
                fixed: 'right',
                align: 'center',
                width: 100,
                hideInSearch: true,
                hideInAdded: true,
                hideInModify: true,
                render: (_, record) => {
                    return [
                        <TableViewAttachmentsBtn
                            key="ViewAttachmentsBtn"
                            data={record}
                            title="查看附件"
                            className={className}
                        />,
                    ]
                },
            },
        ],
    }
    data.columns.find(v => v.dataIndex === 'superviseTypeUuid').fieldProps.options = await setFieldPropsOptions({
        url: 'getSuperviseTypeTree',
    })

    data.columns.find(v => v.dataIndex === 'organizationUuid').valueEnum = await setValueEnumData({
        url: 'getOrganizations',
    })
    return data
}

// 安全巡检
const SecondaryInspectionTemplate = async ({ uuid, className }) => {
    let data = {
        pageSize: 10,
        params: { pageIndex: 1 },
        get: API_LIST()[`getGetSecurityDetailData`],
        columns: [
            {
                title: '巡检日期',
                dataIndex: 'securityDate',
                valueType: 'dateTime',
                ellipsis: true,
                align: 'center',
                search: false,
                width: 200,
            },
            {
                title: '下单人员',
                dataIndex: 'createUserName',
                ellipsis: true,
                align: 'center',
                width: 100,
                search: false,
            },
            { ...commonTableList.organizationUuid, valueEnum: {}, align: 'center', width: 100, title: '整改人员' },

            {
                title: '状态',
                dataIndex: 'auditStatus',
                valueType: 'select',
                ellipsis: true,
                align: 'center',
                initialValue: uuid || null,
                valueEnum: BuiltInData.PatrolStatus,
                width: 100,
            },
            {
                title: '问题类别',
                dataIndex: 'securityProblemTypeUuid',
                ellipsis: true,
                align: 'center',
                width: 200,
                fieldProps: {
                    options: [],
                    fieldNames: { label: 'tableName', value: 'uuid' },
                },
                valueType: 'treeSelect',
            },
            {
                title: '主题',
                dataIndex: 'tableName',
                ellipsis: true,
                align: 'center',
                width: 150,
                search: false,
            },
            {
                title: '问题描述',
                dataIndex: 'problem',
                align: 'center',
                width: 150,
                ellipsis: true,
            },
            {
                title: '整改天数',
                dataIndex: 'limitDays',
                ellipsis: true,
                align: 'center',
                width: 150,
                search: false,
            },
            {
                title: '整改分数',
                dataIndex: 'score',
                ellipsis: true,
                align: 'center',
                width: 150,
                search: false,
            },
            {
                title: '创建日期',
                dataIndex: 'createTime',
                valueType: 'dateTime',
                ellipsis: true,
                align: 'center',
                width: 200,
                search: false,
            },
            {
                title: '审核人姓名',
                dataIndex: 'updateUserName',
                ellipsis: true,
                align: 'center',
                width: 100,
                search: false,
            },
            {
                title: '审核日期',
                dataIndex: 'updateTime',
                valueType: 'dateTime',
                ellipsis: true,
                align: 'center',
                width: 200,
                search: false,
            },
            {
                title: '开始日期',
                valueType: 'dateTime',
                dataIndex: 'BeginSecurityDate',
                ellipsis: true,
                align: 'center',
                width: 200,
                hideInTable: true,
            },
            {
                title: '结束日期',
                valueType: 'dateTime',
                dataIndex: 'EndSecurityDate',
                ellipsis: true,
                align: 'center',
                width: 200,
                hideInTable: true,
            },
            {
                title: '操作',
                valueType: 'systemOperation',
                fixed: 'right',
                align: 'center',
                width: 200,
                hideInSearch: true,
                hideInAdded: true,
                hideInModify: true,
                render: (_, record) => {
                    return [
                        <InspectionDetailsBtn
                            key="InspectionDetailsBtn"
                            title="巡检详情"
                            data={record}
                            className={className}
                            type="security"
                        />,
                    ]
                },
            },
        ],
    }

    data.columns.find(v => v.dataIndex === 'organizationUuid').valueEnum = await setValueEnumData({
        url: 'getOrganizations',
    })
    data.columns.find(v => v.dataIndex === 'securityProblemTypeUuid').fieldProps.options = await setFieldPropsOptions({
        url: 'getSecurityProblemTypeTree',
    })
    return data
}

// 投资情况二级页
const InvestMonthStatListByInvestList = async () => {
    let data = {
        pageSize: 1000,
        params: { pageIndex: 1 },
        hideInSearch: true,
        get: API_LIST()[`getProgressGetInvestMonthStatListByInvestList`],
        columns: [
            {
                title: '主题',
                dataIndex: 'tableName',
                ellipsis: true,
                align: 'center',
                width: 150,
            },
            {
                title: '日期',
                dataIndex: 'yearMonth',
                align: 'center',
                width: 150,
                search: false,
            },
            {
                title: '金额',
                dataIndex: 'amount',
                align: 'center',
                width: 150,
                search: false,
            },
        ],
    }

    return data
}

// 形象进度 - 总体
const ImageProgressPopulation = async ({ uuid }) => {
    const ClientData = JSON.parse(localStorage.getItem('ClientData'))
    let data = {
        pageSize: 10,
        params: { pageIndex: 1 },
        get: API_LIST()[`getGetEngineeringDetail`],
        columns: [
            { ...commonTableList.organizationUuid, valueEnum: {}, align: 'center', width: 100 },
            {
                dataIndex: 'engineeringListUuid',
                title: '形象进度',
                valueType: 'select',
                valueEnum: ClientData.engineeringList,
                initialValue: uuid || null,
                rules: true,
                width: 250,
            },
            {
                title: '总工程量',
                dataIndex: 'zAmount',
                ellipsis: true,
                search: false,
                align: 'center',
            },
            {
                title: '完成工程量',
                dataIndex: 'amount',
                ellipsis: true,
                search: false,
                align: 'center',
            },
            {
                title: '完成比例',
                dataIndex: 'percentage',
                ellipsis: true,
                search: false,
                align: 'center',
            },
            commonTableList.BeginStatDate,
            commonTableList.EndStatDate,
        ],
    }

    data.columns.find(v => v.dataIndex === 'organizationUuid').valueEnum = await setValueEnumData({
        url: 'getOrganizations',
    })

    return data
}

// 某组织机构的压力机数据
const LabStressMachineMapping = async ({ uuid, ExperimentalThrEvent, other }) => {
    if (other?.StateTime) {
        console.log('压力机', other?.StateTime)
    }

    let data = {
        pageSize: 10,
        params: {
            pageIndex: 1,
            OrganizationUuid: uuid,
            equipmentType: '压力机',
            isEnabled: 1,
            OTestDate: 'desc@1',
        },
        // initialValues: { BeginStatDate: other.StateTime },
        get: API_LIST()[`getLabStressMachine`],
        columns: [
            {
                dataIndex: 'projectUuid',
                title: '项目名称',
                valueType: 'select',
                valueEnum: {},
                align: 'center',
                width: 150,
                ellipsis: true,
                hideInTable: other?.project ? false : true,
                hideInSearch: other?.project ? false : true,
            },
            { ...commonTableList.organizationUuid, valueEnum: {}, align: 'center', search: false },
            {
                dataIndex: 'projectName',
                title: '工程名称',
                valueType: 'input',
                align: 'center',
                width: 150,
                ellipsis: true,
                hideInSearch: true,
            },
            {
                dataIndex: 'constructionSpot',
                title: '施工部位',
                valueType: 'input',
                align: 'center',
                width: 250,
                ellipsis: true,
                hideInSearch: true,
            },
            {
                dataIndex: 'testType',
                title: '试验类别',
                valueType: 'input',
                align: 'center',
                width: 250,
                hideInSearch: true,
            },
            {
                dataIndex: 'testDate',
                title: '试验日期',
                hideInSearch: true,
                valueType: 'input',
                align: 'center',
                width: 180,
            },
            {
                dataIndex: 'cubeCode',
                title: '试件编号',
                hideInSearch: true,
                valueType: 'input',
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'concreteAge',
                title: '龄期',
                hideInSearch: true,
                valueType: 'input',
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'designStrength',
                title: '设计强度',
                valueType: 'input',
                align: 'center',
                width: 150,
                hideInSearch: true,
            },
            {
                dataIndex: 'representativeStrength',
                title: '强度代表值',
                hideInSearch: true,
                align: 'center',
                valueType: 'input',
                render: (_, { representativeStrength }) => {
                    return <div> {parseInt(representativeStrength * 100) / 100} </div>
                },
                width: 150,
            },
            {
                dataIndex: 'testEvaluation',
                title: '评定结果',
                align: 'center',
                valueType: 'select',
                valueEnum: BuiltInData.result,
                width: 150,
            },
            {
                dataIndex: 'needHandle',
                title: '是否处置',
                align: 'center',
                valueType: 'select',
                valueEnum: BuiltInData.isYesTwo,
                width: 150,
            },
            {
                dataIndex: 'labHandleTypeUuid',
                title: '处理意见',
                valueType: 'select',
                align: 'center',
                valueEnum: {},
                width: 180,
                hideInSearch: true,
            },
            {
                dataIndex: 'remark',
                title: '意见说明',
                valueType: 'input',
                hideInSearch: true,
                align: 'center',
                width: 180,
            },
            {
                dataIndex: 'handleUserName',
                title: '审核人',
                valueType: 'input',
                hideInSearch: true,
                align: 'center',
                width: 180,
            },
            {
                dataIndex: 'handleTime',
                title: '审核时间',
                valueType: 'input',
                hideInSearch: true,
                align: 'center',
                width: 180,
            },
            { ...commonTableList.isEnabled, rules: true, hideInSearch: true, align: 'center' },

            {
                dataIndex: 'equipmentNumber',
                title: '设备编号',
                valueType: 'input',
                hideInSearch: true,
                align: 'center',
                ellipsis: true,
                width: 300,
            },
            {
                dataIndex: 'equipmentName',
                title: '试验机名称',
                valueType: 'input',
                align: 'center',
                width: 400,
                hideInSearch: true,
            },
            {
                dataIndex: 'equipmentType',
                title: '设备类别',
                valueType: 'select',
                hideInTable: true,
                hideInSearch: true,
                align: 'center',
                valueEnum: {
                    压力机: '压力机',
                    抗折抗压一体机: '抗折抗压一体机',
                },
                width: 150,
            },
            commonTableList.BeginStatDate,
            commonTableList.EndStatDate,
            {
                title: '操作',
                valueType: 'systemOperation',
                fixed: 'right',
                width: 100,
                hideInSearch: true,
                hideInAdded: true,
                hideInModify: true,
                render: (_, record) => {
                    const { uuid } = record
                    return [
                        // 试验详情
                        <Button
                            key="openThr"
                            className="TableBtn"
                            type="link"
                            onClick={() =>
                                ExperimentalThrEvent.emit({
                                    type: 'LabStressMachine',
                                    data: {
                                        data: { uuid },
                                        title: '压力机试验详情',
                                        width: 1200,
                                    },
                                })
                            }
                        >
                            试验详情
                        </Button>,
                    ]
                },
            },
        ],
    }
    if (other?.project) {
        data.columns.find(v => v.dataIndex === 'projectUuid').valueEnum = await setValueEnumData({
            url: 'getProjectList',
        })
    }

    data.columns.find(v => v.dataIndex === 'organizationUuid').valueEnum = await setValueEnumData({
        url: 'getOrganizations',
    })

    data.columns.find(v => v.dataIndex === 'labHandleTypeUuid').valueEnum = await setValueEnumData({
        url: 'getLabHandleType',
    })

    return data
}

// 某组织机构的抗压抗折一体机数据
const LabStressMachineMappingTwo = async ({ uuid, className, ExperimentalThrEvent, other }) => {
    let data = {
        pageSize: 10,
        params: {
            pageIndex: 1,
            OrganizationUuid: uuid,
            equipmentType: '抗折抗压一体机',
            isEnabled: 1,
            OTestDate: 'desc@1',
            // testEvaluation: other?.result,
            // NeedHandle: other?.result,
        },
        // initialValues: { testEvaluation: other?.result, needHandle: other?.result },
        get: API_LIST()[`getLabStressMachine`],
        columns: [
            {
                dataIndex: 'projectUuid',
                title: '项目名称',
                valueType: 'select',
                valueEnum: {},
                align: 'center',
                width: 150,
                ellipsis: true,
                hideInTable: other?.project ? false : true,
                hideInSearch: other?.project ? false : true,
            },
            { ...commonTableList.organizationUuid, valueEnum: {}, align: 'center', search: false },
            {
                dataIndex: 'projectName',
                title: '工程名称',
                valueType: 'input',
                align: 'center',
                width: 150,
                ellipsis: true,
            },
            {
                dataIndex: 'constructionSpot',
                title: '施工部位',
                valueType: 'input',
                align: 'center',
                width: 250,
                ellipsis: true,
            },
            {
                dataIndex: 'testType',
                title: '试验类别',
                valueType: 'input',
                align: 'center',
                width: 250,
            },
            {
                dataIndex: 'testDate',
                title: '试验日期',
                hideInSearch: true,
                valueType: 'input',
                align: 'center',
                width: 180,
            },
            {
                dataIndex: 'cubeCode',
                title: '试件编号',
                hideInSearch: true,
                valueType: 'input',
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'concreteAge',
                title: '龄期',
                hideInSearch: true,
                valueType: 'input',
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'designStrength',
                title: '设计强度',
                valueType: 'input',
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'representativeStrength',
                title: '强度代表值',
                hideInSearch: true,
                align: 'center',
                valueType: 'input',
                render: (_, { representativeStrength }) => {
                    return <div> {parseInt(representativeStrength * 100) / 100} </div>
                },
                width: 150,
            },
            {
                dataIndex: 'testEvaluation',
                title: '评定结果',
                align: 'center',
                valueType: 'select',
                valueEnum: BuiltInData.result,
                width: 150,
            },
            {
                dataIndex: 'labHandleTypeUuid',
                title: '处理意见',
                valueType: 'select',
                hideInSearch: true,
                align: 'center',
                valueEnum: {},
                width: 180,
            },
            {
                dataIndex: 'needHandle',
                title: '是否处置',
                align: 'center',
                valueType: 'select',
                valueEnum: BuiltInData.isYesTwo,
                width: 150,
            },
            {
                dataIndex: 'remark',
                title: '意见说明',
                valueType: 'input',
                hideInSearch: true,
                align: 'center',
                width: 180,
            },
            {
                dataIndex: 'handleUserName',
                title: '审核人',
                valueType: 'input',
                hideInSearch: true,
                align: 'center',
                width: 180,
            },
            {
                dataIndex: 'handleTime',
                title: '审核时间',
                valueType: 'input',
                hideInSearch: true,
                align: 'center',
                width: 180,
            },
            { ...commonTableList.isEnabled, rules: true, hideInSearch: true, align: 'center' },

            {
                dataIndex: 'equipmentNumber',
                title: '设备编号',
                valueType: 'input',
                hideInSearch: true,
                align: 'center',
                ellipsis: true,
                width: 300,
            },
            {
                dataIndex: 'equipmentName',
                title: '试验机名称',
                valueType: 'input',
                align: 'center',
                width: 400,
            },
            {
                dataIndex: 'equipmentType',
                title: '设备类别',
                valueType: 'select',
                hideInTable: true,
                hideInSearch: true,
                align: 'center',
                valueEnum: {
                    压力机: '压力机',
                    抗折抗压一体机: '抗折抗压一体机',
                },
                width: 150,
            },
            commonTableList.BeginStatDate,
            commonTableList.EndStatDate,
            {
                title: '操作',
                valueType: 'systemOperation',
                fixed: 'right',
                width: 100,
                hideInSearch: true,
                hideInAdded: true,
                hideInModify: true,
                render: (_, record) => {
                    const { uuid } = record
                    return [
                        // 试验详情
                        <Button
                            key="openThr"
                            className="TableBtn"
                            type="link"
                            onClick={() =>
                                ExperimentalThrEvent.emit({
                                    type: 'LabStressMachine',
                                    data: {
                                        data: { uuid },
                                        title: '压力机试验详情',
                                        width: 1200,
                                    },
                                })
                            }
                        >
                            试验详情
                        </Button>,
                    ]
                },
            },
        ],
    }
    if (other?.project) {
        data.columns.find(v => v.dataIndex === 'projectUuid').valueEnum = await setValueEnumData({
            url: 'getProjectList',
        })
    }
    data.columns.find(v => v.dataIndex === 'organizationUuid').valueEnum = await setValueEnumData({
        url: 'getOrganizations',
    })
    data.columns.find(v => v.dataIndex === 'labHandleTypeUuid').valueEnum = await setValueEnumData({
        url: 'getLabHandleType',
    })
    return data
}

// 某组织机构的万能机钢筋数据
const LabUniversalRebarMapping = async ({ uuid, className, ExperimentalThrEvent, other }) => {
    let data = {
        pageSize: 10,
        params: {
            pageIndex: 1,
            OrganizationUuid: uuid,
            isEnabled: 1,
            OTestDate: 'desc@1',
            // result: other?.result,
            // NeedHandle: other?.result,
        },
        // initialValues: { result: '合格', needHandle: other?.result },
        get: API_LIST()[`getLabUniversalRebar`],
        columns: [
            {
                dataIndex: 'projectUuid',
                title: '项目名称',
                valueType: 'select',
                valueEnum: {},
                align: 'center',
                width: 150,
                ellipsis: true,
                hideInTable: other?.project ? false : true,
                hideInSearch: other?.project ? false : true,
            },
            { ...commonTableList.organizationUuid, valueEnum: {}, align: 'center', search: false },
            {
                dataIndex: 'groupName',
                title: '试验组号',
                valueType: 'input',
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'testCode',
                title: '试件序号',
                hideInSearch: true,
                valueType: 'input',
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'testType',
                title: '试验类别',
                hideInSearch: true,
                valueType: 'input',
                ellipsis: true,
                align: 'center',
                width: 200,
            },
            {
                dataIndex: 'testDate',
                title: '试验时间',
                hideInSearch: true,
                align: 'center',
                valueType: 'input',
                width: 200,
            },
            {
                dataIndex: 'nominalDiameter',
                title: '公称直径',
                hideInSearch: true,
                align: 'center',
                valueType: 'input',
                width: 150,
            },

            {
                dataIndex: 'nominalSectionalArea',
                title: '公称截面面积',
                hideInSearch: true,
                align: 'center',
                valueType: 'input',
                width: 150,
            },

            {
                dataIndex: 'lowerYield',
                title: '屈服力Fs(kN)',
                hideInSearch: true,
                align: 'center',
                valueType: 'input',
                width: 150,
            },

            {
                dataIndex: 'lowerYieldStrength',
                title: '屈服点RP(MPa)',
                hideInSearch: true,
                valueType: 'input',
                align: 'center',
                width: 150,
            },

            {
                dataIndex: 'maximumForce',
                title: '拉断最大力Fm(kN)',
                hideInSearch: true,
                align: 'center',
                valueType: 'input',
                width: 180,
            },

            {
                dataIndex: 'bendingStrength',
                title: '抗拉强度Rm(MPa)',
                hideInSearch: true,
                valueType: 'input',
                align: 'center',
                width: 180,
            },

            {
                dataIndex: 'elongationPctAfter',
                title: '断后伸长率A(%)',
                hideInSearch: true,
                valueType: 'input',
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'maximumTotalElongation',
                title: '最大力总延伸率（%）',
                hideInSearch: true,
                valueType: 'input',
                align: 'center',
                width: 200,
            },
            {
                dataIndex: 'elasticityModulus',
                title: '弹性模量E(Gpa)',
                hideInSearch: true,
                align: 'center',
                valueType: 'input',
                width: 150,
            },
            {
                dataIndex: 'result',
                title: '评定结果',
                rules: true,
                align: 'center',
                valueType: 'select',
                valueEnum: { 合格: '合格', 不合格: '不合格' },
                width: 150,
            },
            {
                dataIndex: 'labHandleTypeUuid',
                title: '处理意见',
                valueType: 'select',
                hideInSearch: true,
                align: 'center',
                valueEnum: {},
                width: 180,
            },
            {
                dataIndex: 'needHandle',
                title: '是否处置',
                align: 'center',
                valueType: 'select',
                valueEnum: BuiltInData.isYesTwo,
                width: 150,
            },
            {
                dataIndex: 'remark',
                title: '意见说明',
                valueType: 'input',
                align: 'center',
                hideInSearch: true,
                width: 180,
            },
            {
                dataIndex: 'handleUserName',
                title: '审核人',
                hideInSearch: true,
                align: 'center',
                valueType: 'input',
                width: 180,
            },
            {
                dataIndex: 'handleTime',
                title: '审核时间',
                valueType: 'input',
                align: 'center',
                hideInSearch: true,
                width: 180,
            },
            { ...commonTableList.isEnabled, rules: true, hideInSearch: true, align: 'center' },
            {
                dataIndex: 'equipmentName',
                title: '试验机名称',
                align: 'center',
                valueType: 'input',
                hideInSearch: true,
                width: 400,
            },
            commonTableList.BeginStatDate,
            commonTableList.EndStatDate,
            {
                title: '操作',
                valueType: 'systemOperation',
                fixed: 'right',
                width: 100,
                hideInSearch: true,
                hideInAdded: true,
                hideInModify: true,
                render: (_, record) => {
                    const { groupId } = record

                    return [
                        // 试验详情
                        <Button
                            key="openThr"
                            className="TableBtn"
                            type="link"
                            onClick={() =>
                                ExperimentalThrEvent.emit({
                                    // className,
                                    // value: 'SampleParameterDetails',
                                    // data: {
                                    //     labReportTemplateTableName: '万能机-钢筋试验',
                                    //     Details: { originalDataTable: 'Lab_LabUniversalRebar' },
                                    //     hideInLeft: true,
                                    //     displayNo: record.groupId,
                                    // },
                                    type: 'LabUniversalRebar',
                                    data: {
                                        data: { groupId },
                                        title: '万能机试验详情',
                                        width: 1200,
                                    },
                                })
                            }
                        >
                            试验详情
                        </Button>,
                    ]
                },
            },
        ],
    }
    if (other?.project) {
        data.columns.find(v => v.dataIndex === 'projectUuid').valueEnum = await setValueEnumData({
            url: 'getProjectList',
        })
    }
    data.columns.find(v => v.dataIndex === 'organizationUuid').valueEnum = await setValueEnumData({
        url: 'getOrganizations',
    })
    data.columns.find(v => v.dataIndex === 'labHandleTypeUuid').valueEnum = await setValueEnumData({
        url: 'getLabHandleType',
    })
    return data
}

// 某组织机构的标养室数据
const LabHumitureMapping = async ({ uuid, other }) => {
    let data = {
        pageSize: 10,
        params: {
            pageIndex: 1,
            OrganizationUuid: uuid,
            isEnabled: 1,
            ODataCreationTime: 'desc@1',
            testEvaluation: other?.result,
            NeedHandle: other?.result,
        },
        get: API_LIST()[`getLabHumiture`],
        columns: [
            {
                dataIndex: 'projectUuid',
                title: '项目名称',
                valueType: 'select',
                valueEnum: {},
                align: 'center',
                width: 150,
                ellipsis: true,
                hideInTable: other?.project ? false : true,
                hideInSearch: other?.project ? false : true,
            },
            { ...commonTableList.organizationUuid, valueEnum: {}, align: 'center', search: false },
            {
                dataIndex: 'sensorName',
                title: '传感器名称',
                hideInSearch: true,
                align: 'center',
                valueType: 'input',
                width: 150,
            },
            {
                dataIndex: 'dataCreationTime',
                title: '创建时间',
                valueType: 'input',
                hideInSearch: true,
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'temperature',
                title: '温度',
                hideInSearch: true,
                valueType: 'input',
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'humidity',
                title: '湿度',
                hideInSearch: true,
                valueType: 'input',
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'electricQuantity',
                title: '电量',
                hideInSearch: true,
                valueType: 'input',
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'testEvaluation',
                title: '评定结果',
                hideInSearch: true,
                valueType: 'select',
                align: 'center',
                valueEnum: BuiltInData.result,
                width: 150,
            },
            {
                dataIndex: 'labHandleTypeUuid',
                title: '处理意见',
                valueType: 'select',
                align: 'center',
                valueEnum: {},
                width: 180,
            },
            {
                dataIndex: 'remark',
                title: '意见说明',
                valueType: 'input',
                align: 'center',
                hideInSearch: true,
                width: 180,
            },
            {
                dataIndex: 'handleUserName',
                title: '审核人',
                valueType: 'input',
                align: 'center',
                hideInSearch: true,
                width: 180,
            },
            {
                dataIndex: 'handleTime',
                title: '审核时间',
                valueType: 'input',
                align: 'center',
                hideInSearch: true,
                width: 180,
            },
            { ...commonTableList.isEnabled, rules: true, hideInSearch: false, align: 'center' },
            {
                dataIndex: 'equipmentNumber',
                title: '设备编号',
                valueType: 'input',
                align: 'center',
                hideInSearch: true,
                width: 150,
            },
            {
                dataIndex: 'equipmentName',
                title: '设备名称',
                align: 'center',
                valueType: 'input',
                width: 400,
            },
            commonTableList.BeginStatDate,
            commonTableList.EndStatDate,
        ],
    }

    if (other?.project) {
        data.columns.find(v => v.dataIndex === 'projectUuid').valueEnum = await setValueEnumData({
            url: 'getProjectList',
        })
    }
    data.columns.find(v => v.dataIndex === 'organizationUuid').valueEnum = await setValueEnumData({
        url: 'getOrganizations',
    })

    data.columns.find(v => v.dataIndex === 'labHandleTypeUuid').valueEnum = await setValueEnumData({
        url: 'getLabHandleType',
    })

    return data
}

// 某组织机构的马歇尔数据
const LabMarshallStabilityMapping = async ({ uuid, other }) => {
    let data = {
        pageSize: 10,
        params: {
            pageIndex: 1,
            OrganizationUuid: uuid,
            isEnabled: 1,
            OTestDate: 'desc@1',
            result: other?.result,
            NeedHandle: other?.result,
        },
        get: API_LIST()[`getLabMarshallStability`],
        columns: [
            {
                dataIndex: 'projectUuid',
                title: '项目名称',
                valueType: 'select',
                valueEnum: {},
                align: 'center',
                width: 150,
                ellipsis: true,
                hideInTable: other?.project ? false : true,
                hideInSearch: other?.project ? false : true,
            },
            { ...commonTableList.organizationUuid, valueEnum: {}, align: 'center', search: false },
            {
                dataIndex: 'taskNo',
                title: '任务编号',
                valueType: 'input',
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'testFr',
                title: '试件序号',
                valueType: 'input',
                hideInSearch: true,
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'sampleName',
                title: '样品名称',
                valueType: 'input',
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'startTime',
                title: '开始时间',
                valueType: 'input',
                hideInSearch: true,
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'endTime',
                title: '结束时间',
                valueType: 'input',
                align: 'center',
                hideInSearch: true,
                width: 150,
            },
            {
                dataIndex: 'stability',
                title: '稳定度(kN)',
                valueType: 'input',
                align: 'center',
                hideInSearch: true,
                width: 150,
            },

            {
                dataIndex: 'average',
                title: '稳定度平均值',
                valueType: 'input',
                align: 'center',
                hideInSearch: true,
                width: 150,
            },
            {
                dataIndex: 'flow',
                title: '流值(mm)',
                valueType: 'input',
                align: 'center',
                hideInSearch: true,
                width: 150,
            },
            {
                dataIndex: 'flowavg',
                title: '流值平均值',
                valueType: 'input',
                align: 'center',
                hideInSearch: true,
                width: 150,
            },
            {
                dataIndex: 'marshalLt',
                title: '马歇尔模数(kN/mm)',
                valueType: 'input',
                align: 'center',
                hideInSearch: true,
                width: 150,
            },
            {
                dataIndex: 'avgmarshallt',
                title: '马歇尔模数平均值',
                valueType: 'input',
                align: 'center',
                hideInSearch: true,
                width: 150,
            },
            {
                dataIndex: 'result',
                title: '评定结果',
                valueType: 'select',
                align: 'center',
                valueEnum: BuiltInData.result,
                width: 150,
            },
            {
                dataIndex: 'labHandleTypeUuid',
                title: '处理意见',
                valueType: 'select',
                align: 'center',
                valueEnum: {},
                width: 180,
            },
            {
                dataIndex: 'remark',
                title: '意见说明',
                valueType: 'input',
                align: 'center',
                hideInSearch: true,
                width: 180,
            },
            {
                dataIndex: 'handleUserName',
                title: '审核人',
                valueType: 'input',
                align: 'center',
                hideInSearch: true,
                width: 180,
            },
            {
                dataIndex: 'handleTime',
                title: '审核时间',
                align: 'center',
                valueType: 'input',
                hideInSearch: true,
                width: 180,
            },
            { ...commonTableList.isEnabled, rules: true, hideInSearch: false, align: 'center' },

            {
                dataIndex: 'equipmentNumber',
                title: '设备编号',
                valueType: 'input',
                align: 'center',
                hideInSearch: true,
                width: 150,
            },
            {
                dataIndex: 'equipmentName',
                title: '设备名称',
                align: 'center',
                valueType: 'input',
                width: 400,
            },
            commonTableList.BeginStatDate,
            commonTableList.EndStatDate,
        ],
    }
    if (other?.project) {
        data.columns.find(v => v.dataIndex === 'projectUuid').valueEnum = await setValueEnumData({
            url: 'getProjectList',
        })
    }
    data.columns.find(v => v.dataIndex === 'organizationUuid').valueEnum = await setValueEnumData({
        url: 'getOrganizations',
    })

    data.columns.find(v => v.dataIndex === 'labHandleTypeUuid').valueEnum = await setValueEnumData({
        url: 'getLabHandleType',
    })

    return data
}

// 某组织机构的针入度数据
const LabPenetrationMapping = async ({ uuid, other }) => {
    let data = {
        pageSize: 10,
        params: {
            pageIndex: 1,
            OrganizationUuid: uuid,
            isEnabled: 1,
            OTestDate: 'desc@1',
            result: other?.result,
            NeedHandle: other?.result,
        },
        get: API_LIST()[`getLabPenetration`],
        columns: [
            {
                dataIndex: 'projectUuid',
                title: '项目名称',
                valueType: 'select',
                valueEnum: {},
                align: 'center',
                width: 150,
                ellipsis: true,
                hideInTable: other?.project ? false : true,
                hideInSearch: other?.project ? false : true,
            },
            { ...commonTableList.organizationUuid, valueEnum: {}, align: 'center', search: false },
            {
                dataIndex: 'taskNo',
                title: '任务编号',
                valueType: 'input',
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'testFr',
                title: '试件序号',
                valueType: 'input',
                hideInSearch: true,
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'sampleName',
                title: '样品名称',
                valueType: 'input',
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'startTime',
                title: '开始时间',
                valueType: 'input',
                align: 'center',
                hideInSearch: true,
                width: 150,
            },
            {
                dataIndex: 'endTime',
                title: '结束时间',
                valueType: 'input',
                hideInSearch: true,
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'testTemp',
                title: '试验温度(℃)',
                hideInSearch: true,
                align: 'center',
                valueType: 'input',
                width: 150,
            },
            {
                dataIndex: 'penetration',
                title: '针入度',
                valueType: 'input',
                align: 'center',
                hideInSearch: true,
                width: 150,
            },
            {
                dataIndex: 'average',
                title: '平均值',
                valueType: 'input',
                align: 'center',
                hideInSearch: true,
                width: 150,
            },
            {
                dataIndex: 'result',
                title: '评定结果',
                align: 'center',
                valueType: 'select',
                valueEnum: BuiltInData.result,
                width: 150,
            },
            {
                dataIndex: 'labHandleTypeUuid',
                title: '处理意见',
                hideInSearch: true,
                align: 'center',
                valueType: 'select',
                valueEnum: {},
                width: 180,
            },
            {
                dataIndex: 'remark',
                title: '意见说明',
                valueType: 'input',
                align: 'center',
                hideInSearch: true,
                width: 180,
            },
            {
                dataIndex: 'handleUserName',
                title: '审核人',
                valueType: 'input',
                align: 'center',
                hideInSearch: true,
                width: 180,
            },
            {
                dataIndex: 'handleTime',
                title: '审核时间',
                valueType: 'input',
                align: 'center',
                hideInSearch: true,
                width: 180,
            },
            { ...commonTableList.isEnabled, rules: true, hideInSearch: false, align: 'center' },
            {
                dataIndex: 'equipmentNumber',
                title: '设备编号',
                align: 'center',
                valueType: 'input',
                hideInSearch: true,
                width: 150,
            },
            {
                dataIndex: 'equipmentName',
                title: '设备名称',
                align: 'center',
                valueType: 'input',
                hideInSearch: true,
                width: 400,
            },
            commonTableList.BeginStatDate,
            commonTableList.EndStatDate,
        ],
    }
    if (other?.project) {
        data.columns.find(v => v.dataIndex === 'projectUuid').valueEnum = await setValueEnumData({
            url: 'getProjectList',
        })
    }

    data.columns.find(v => v.dataIndex === 'organizationUuid').valueEnum = await setValueEnumData({
        url: 'getOrganizations',
    })

    data.columns.find(v => v.dataIndex === 'labHandleTypeUuid').valueEnum = await setValueEnumData({
        url: 'getLabHandleType',
    })
    return data
}

// 某组织机构的软化点数据
const LabSofteningPointMapping = async ({ uuid, other }) => {
    let data = {
        pageSize: 10,
        params: {
            pageIndex: 1,
            OrganizationUuid: uuid,
            isEnabled: 1,
            OTestDate: 'desc@1',
            result: other?.result,
            NeedHandle: other?.result,
        },
        get: API_LIST()[`getLabSofteningPoint`],
        columns: [
            {
                dataIndex: 'projectUuid',
                title: '项目名称',
                valueType: 'select',
                valueEnum: {},
                align: 'center',
                width: 150,
                ellipsis: true,
                hideInTable: other?.project ? false : true,
                hideInSearch: other?.project ? false : true,
            },
            { ...commonTableList.organizationUuid, valueEnum: {}, align: 'center', search: false },
            {
                dataIndex: 'taskNo',
                title: '任务编号',
                valueType: 'input',
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'testFr',
                title: '试件序号',
                valueType: 'input',
                hideInSearch: true,
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'sampleName',
                title: '样品名称',
                valueType: 'input',
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'startTime',
                title: '开始时间',
                valueType: 'input',
                align: 'center',
                hideInSearch: true,
                width: 150,
            },
            {
                dataIndex: 'endTime',
                title: '结束时间',
                align: 'center',
                valueType: 'input',
                hideInSearch: true,
                width: 150,
            },
            {
                dataIndex: 'testTemp',
                title: '试验温度(℃)',
                align: 'center',
                valueType: 'input',
                hideInSearch: true,
                width: 150,
            },
            {
                dataIndex: 'softenTime',
                title: '软化点时间(mm:ss)',
                valueType: 'input',
                align: 'center',
                hideInSearch: true,
                width: 150,
            },
            {
                dataIndex: 'softenP',
                title: '软化点温度(℃)',
                valueType: 'input',
                align: 'center',
                hideInSearch: true,
                width: 150,
            },
            {
                dataIndex: 'average',
                title: '平均值',
                valueType: 'input',
                hideInSearch: true,
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'result',
                title: '评定结果',
                valueType: 'select',
                align: 'center',
                valueEnum: BuiltInData.result,
                width: 150,
            },
            {
                dataIndex: 'labHandleTypeUuid',
                title: '处理意见',
                align: 'center',
                valueType: 'select',
                valueEnum: {},
                width: 180,
            },
            {
                dataIndex: 'remark',
                title: '意见说明',
                align: 'center',
                valueType: 'input',
                hideInSearch: true,
                width: 180,
            },
            {
                dataIndex: 'handleUserName',
                title: '审核人',
                align: 'center',
                valueType: 'input',
                hideInSearch: true,
                width: 180,
            },
            {
                dataIndex: 'handleTime',
                title: '审核时间',
                align: 'center',
                valueType: 'input',
                hideInSearch: true,
                width: 180,
            },
            { ...commonTableList.isEnabled, rules: true, hideInSearch: false, align: 'center' },
            {
                dataIndex: 'equipmentNumber',
                title: '设备编号',
                align: 'center',
                valueType: 'input',
                hideInSearch: true,
                width: 150,
            },
            {
                dataIndex: 'equipmentName',
                title: '设备名称',
                align: 'center',
                valueType: 'input',
                width: 400,
            },
            commonTableList.BeginStatDate,
            commonTableList.EndStatDate,
        ],
    }
    if (other?.project) {
        data.columns.find(v => v.dataIndex === 'projectUuid').valueEnum = await setValueEnumData({
            url: 'getProjectList',
        })
    }

    data.columns.find(v => v.dataIndex === 'organizationUuid').valueEnum = await setValueEnumData({
        url: 'getOrganizations',
    })
    data.columns.find(v => v.dataIndex === 'labHandleTypeUuid').valueEnum = await setValueEnumData({
        url: 'getLabHandleType',
    })

    return data
}

// 某组织机构的延度仪数据
const LabDuctilityMapping = async ({ uuid, other }) => {
    let data = {
        pageSize: 10,
        params: {
            pageIndex: 1,
            OrganizationUuid: uuid,
            isEnabled: 1,
            OTestDate: 'desc@1',
            result: other?.result,
            NeedHandle: other?.result,
        },
        get: API_LIST()[`getLabDuctility`],
        columns: [
            {
                dataIndex: 'projectUuid',
                title: '项目名称',
                valueType: 'select',
                valueEnum: {},
                align: 'center',
                width: 150,
                ellipsis: true,
                hideInTable: other?.project ? false : true,
                hideInSearch: other?.project ? false : true,
            },
            { ...commonTableList.organizationUuid, valueEnum: {}, align: 'center', search: false },
            {
                dataIndex: 'taskNo',
                title: '任务编号',
                valueType: 'input',
                align: 'center',
                width: 250,
            },
            {
                dataIndex: 'testFr',
                title: '试件序号',
                valueType: 'input',
                hideInSearch: true,
                align: 'center',
                width: 250,
            },
            {
                dataIndex: 'sampleName',
                title: '样品名称',
                valueType: 'input',
                align: 'center',
                width: 250,
            },
            {
                dataIndex: 'startTime',
                title: '开始时间',
                valueType: 'input',
                width: 250,
                align: 'center',
                hideInSearch: true,
            },
            {
                dataIndex: 'endTime',
                title: '结束时间',
                valueType: 'input',
                align: 'center',
                width: 250,
                hideInSearch: true,
            },
            {
                dataIndex: 'testTemp',
                title: '试验温度',
                valueType: 'input',
                align: 'center',
                hideInSearch: true,
                width: 250,
            },
            {
                dataIndex: 'extensionSpeed',
                title: '延伸速度',
                valueType: 'input',
                hideInSearch: true,
                align: 'center',
                width: 250,
            },
            {
                dataIndex: 'ductility',
                title: '延伸值',
                valueType: 'input',
                align: 'center',
                hideInSearch: true,
                width: 250,
            },
            {
                dataIndex: 'averageDuctility',
                title: '平均延度',
                valueType: 'input',
                align: 'center',
                hideInSearch: true,
                width: 250,
            },
            {
                dataIndex: 'result',
                title: '评定结果',
                valueType: 'select',
                align: 'center',
                valueEnum: BuiltInData.result,
                width: 150,
            },
            {
                dataIndex: 'labHandleTypeUuid',
                title: '处理意见',
                valueType: 'select',
                valueEnum: {},
                align: 'center',
                width: 180,
            },
            {
                dataIndex: 'remark',
                title: '意见说明',
                valueType: 'input',
                align: 'center',
                hideInSearch: true,
                width: 180,
            },
            {
                dataIndex: 'handleUserName',
                title: '审核人',
                align: 'center',
                valueType: 'input',
                hideInSearch: true,
                width: 180,
            },
            {
                dataIndex: 'handleTime',
                title: '审核时间',
                align: 'center',
                valueType: 'input',
                hideInSearch: true,
                width: 180,
            },
            { ...commonTableList.isEnabled, rules: true, hideInSearch: false, align: 'center' },
            {
                dataIndex: 'equipmentNumber',
                title: '设备编号',
                align: 'center',
                valueType: 'input',
                width: 250,
            },
            {
                dataIndex: 'equipmentName',
                title: '设备名称',
                align: 'center',
                valueType: 'input',
                width: 400,
            },
            commonTableList.BeginStatDate,
            commonTableList.EndStatDate,
        ],
    }

    if (other?.project) {
        data.columns.find(v => v.dataIndex === 'projectUuid').valueEnum = await setValueEnumData({
            url: 'getProjectList',
        })
    }

    data.columns.find(v => v.dataIndex === 'organizationUuid').valueEnum = await setValueEnumData({
        url: 'getOrganizations',
    })

    data.columns.find(v => v.dataIndex === 'labHandleTypeUuid').valueEnum = await setValueEnumData({
        url: 'getLabHandleType',
    })

    return data
}

// 某组织机构的回弹仪数据
const LabReboundHammerMapping = async ({ uuid, className, other, ExperimentalThrEvent }) => {
    let data = {
        pageSize: 10,
        params: {
            pageIndex: 1,
            OrganizationUuid: uuid,
            isEnabled: 1,
            ODetectionTime: 'desc@0 ',
            result: other?.result,
            NeedHandle: other?.result,
        },
        get: API_LIST()[`getLabReboundHammer`],
        columns: [
            {
                dataIndex: 'projectUuid',
                title: '项目名称',
                valueType: 'select',
                valueEnum: {},
                align: 'center',
                width: 150,
                ellipsis: true,
                hideInTable: other?.project ? false : true,
                hideInSearch: other?.project ? false : true,
            },
            { ...commonTableList.organizationUuid, valueEnum: {}, align: 'center', search: false },
            {
                dataIndex: 'componentNumber',
                title: '构件编号',
                valueType: 'input',
                align: 'center',
                width: 200,
            },
            {
                dataIndex: 'componentName',
                title: '构件名称',
                valueType: 'input',
                align: 'center',
                width: 200,
            },
            {
                dataIndex: 'detectionTime',
                title: '检测时间',
                valueType: 'input',
                hideInSearch: true,
                align: 'center',
                width: 180,
            },
            {
                dataIndex: 'designGrade',
                title: '砼设计强度',
                valueType: 'input',
                align: 'center',
                width: 120,
            },
            {
                dataIndex: 'componentStrength',
                title: '构件强度',
                valueType: 'input',
                hideInSearch: true,
                align: 'center',
                width: 100,
            },
            {
                dataIndex: 'carbonationDepthdata',
                title: '碳化深度',
                valueType: 'input',
                hideInSearch: true,
                align: 'center',
                width: 120,
            },
            // ! 合并
            {
                dataIndex: 'testSurface',
                title: '测试状态',
                valueType: 'input',
                align: 'center',
                hideInSearch: true,
                width: 150,
                render: (_, e) => {
                    const { testSurface, sideIsdry, sideRough } = e
                    const testSurfaceList = { 0: '表面', 1: '侧面', 2: '底面' }
                    const sideIsdryList = { 0: '干燥', 1: '湿润' }
                    const sideRoughList = { 0: '光滑', 1: '粗糙' }
                    return (
                        <div>
                            {testSurfaceList[testSurface]},{sideIsdryList[sideIsdry]},{sideRoughList[sideRough]}
                        </div>
                    )
                },
            },
            {
                dataIndex: 'testAngle',
                title: '测试角度',
                align: 'center',
                valueType: 'input',
                hideInSearch: true,
                width: 100,
            },
            { ...commonTableList.isEnabled, rules: true, hideInSearch: false, align: 'center' },
            {
                dataIndex: 'equipmentNumber',
                title: '设备编号',
                align: 'center',
                valueType: 'input',
                width: 250,
            },
            {
                dataIndex: 'equipmentName',
                title: '设备名称',
                align: 'center',
                valueType: 'input',
                width: 400,
            },
            commonTableList.BeginStatDate,
            commonTableList.EndStatDate,
            {
                title: '操作',
                valueType: 'systemOperation',
                fixed: 'right',
                width: 100,
                hideInSearch: true,
                hideInAdded: true,
                hideInModify: true,
                render: (_, record) => {
                    const { uuid } = record
                    return [
                        <Button
                            key="openThr"
                            className="TableBtn"
                            type="link"
                            onClick={() =>
                                ExperimentalThrEvent.emit({
                                    type: 'LabReboundHammer',
                                    data: {
                                        data: { uuid },
                                        title: '回弹仪试验详情',
                                        width: 1200,
                                    },
                                })
                            }
                        >
                            试验详情
                        </Button>,
                    ]
                },
            },
        ],
    }
    if (other?.project) {
        data.columns.find(v => v.dataIndex === 'projectUuid').valueEnum = await setValueEnumData({
            url: 'getProjectList',
        })
    }

    data.columns.find(v => v.dataIndex === 'organizationUuid').valueEnum = await setValueEnumData({
        url: 'getOrganizations',
    })
    return data
}

// 某组织机构的钢筋保护层数据
const LabCoverProtectorMapping = async ({ uuid, className, other, ExperimentalThrEvent }) => {
    let data = {
        pageSize: 10,
        params: {
            pageIndex: 1,
            OrganizationUuid: uuid,
            isEnabled: 1,
            ODetectionTime: 'desc@1',
            gradingresults: other?.result,
            NeedHandle: other?.result,
        },
        get: API_LIST()[`getLabCoverProtector`],
        columns: [
            {
                dataIndex: 'projectUuid',
                title: '项目名称',
                valueType: 'select',
                valueEnum: {},
                align: 'center',
                width: 150,
                ellipsis: true,
                hideInTable: other?.project ? false : true,
                hideInSearch: other?.project ? false : true,
            },
            { ...commonTableList.organizationUuid, valueEnum: {}, align: 'center', search: false },
            {
                dataIndex: 'componentName',
                title: '构件名称',
                valueType: 'input',
                align: 'center',
                width: 200,
            },

            {
                dataIndex: 'structureName',
                title: '结构物名称',
                valueType: 'input',
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'structuralPosition',
                title: '结构位置',
                valueType: 'input',
                align: 'center',
                width: 150,
            },

            {
                dataIndex: 'detectionTime',
                title: '检测时间',
                valueType: 'input',
                align: 'center',
                width: 180,
            },
            {
                dataIndex: 'designThickness',
                title: '设计厚度(mm)',
                valueType: 'input',
                align: 'center',
                width: 120,
            },
            {
                dataIndex: 'numberOfbars',
                title: '测点总数',
                valueType: 'input',
                align: 'center',
                width: 100,
            },
            {
                dataIndex: 'averageThickness',
                title: '平均厚度',
                valueType: 'input',
                align: 'center',
                width: 100,
            },
            {
                dataIndex: 'minThickness',
                title: '最小厚度',
                valueType: 'input',
                align: 'center',
                width: 100,
            },
            {
                dataIndex: 'maxThickness',
                title: '最大厚度',
                valueType: 'input',
                align: 'center',
                width: 100,
            },

            {
                dataIndex: 'PercentOfPass',
                title: '合格率(%)',
                valueType: 'input',
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'gradingresults',
                title: '评定结果',
                valueType: 'select',
                align: 'center',
                valueEnum: BuiltInData.gradingresults,
                width: 150,
            },
            {
                dataIndex: 'labHandleTypeUuid',
                title: '处理意见',
                valueType: 'select',
                align: 'center',
                valueEnum: {},
                width: 180,
            },
            {
                dataIndex: 'remark',
                title: '意见说明',
                valueType: 'input',
                align: 'center',
                width: 180,
            },
            {
                dataIndex: 'handleUserName',
                title: '审核人',
                valueType: 'input',
                align: 'center',
                width: 180,
            },
            {
                dataIndex: 'handleTime',
                title: '审核时间',
                valueType: 'input',
                align: 'center',
                width: 180,
            },
            { ...commonTableList.isEnabled, rules: true, hideInSearch: false, align: 'center' },
            {
                dataIndex: 'equipmentNumber',
                title: '设备编号',
                valueType: 'input',
                align: 'center',
                width: 250,
            },
            {
                dataIndex: 'equipmentName',
                title: '设备名称',
                valueType: 'input',
                align: 'center',
                width: 400,
            },
            {
                title: '操作',
                valueType: 'systemOperation',
                fixed: 'right',
                width: 100,
                hideInSearch: true,
                hideInAdded: true,
                hideInModify: true,
                render: (_, record) => {
                    const { uuid } = record
                    return [
                        <Button
                            key="openThr"
                            className="TableBtn"
                            type="link"
                            onClick={() =>
                                ExperimentalThrEvent.emit({
                                    type: 'LabCoverProtector',
                                    data: {
                                        data: { uuid },
                                        title: '钢筋保护层详情',
                                        width: 1200,
                                    },
                                })
                            }
                        >
                            试验详情
                        </Button>,
                    ]
                },
            },
        ],
    }
    if (other?.project) {
        data.columns.find(v => v.dataIndex === 'projectUuid').valueEnum = await setValueEnumData({
            url: 'getProjectList',
        })
    }

    data.columns.find(v => v.dataIndex === 'organizationUuid').valueEnum = await setValueEnumData({
        url: 'getOrganizations',
    })

    data.columns.find(v => v.dataIndex === 'labHandleTypeUuid').valueEnum = await setValueEnumData({
        url: 'getLabHandleType',
    })

    return data
}

// 某组织机构的路强仪cbr试验数据
const LabPmsTesterCbrMapping = async ({ uuid, other }) => {
    let data = {
        pageSize: 10,
        params: {
            pageIndex: 1,
            OrganizationUuid: uuid,
            isEnabled: 1,
            gradingresults: other?.result,
            NeedHandle: other?.result,
        },
        get: API_LIST()[`getLabPmsTesterCbr`],
        columns: [
            {
                dataIndex: 'projectUuid',
                title: '项目名称',
                valueType: 'select',
                valueEnum: {},
                align: 'center',
                width: 150,
                ellipsis: true,
                hideInTable: other?.project ? false : true,
                hideInSearch: other?.project ? false : true,
            },
            commonTableList.uuid,
            { ...commonTableList.organizationUuid, valueEnum: {}, align: 'center' },
            {
                dataIndex: 'taskNo',
                title: '试验编号',
                valueType: 'input',
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'sampleName',
                title: '样品名称',
                valueType: 'input',
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'testFr',
                title: '试件序号',
                valueType: 'input',
                align: 'center',
                width: 150,
                hideInSearch: true,
            },
            {
                dataIndex: 'sampleNo',
                title: '试样编号',
                valueType: 'input',
                align: 'center',
                width: 150,
                hideInSearch: true,
            },
            {
                dataIndex: 'startTime',
                title: '开始时间',
                valueType: 'input',
                align: 'center',
                width: 150,
                hideInSearch: true,
            },
            {
                dataIndex: 'cbr25',
                title: 'CBR25(%)',
                valueType: 'input',
                align: 'center',
                width: 150,
                hideInSearch: true,
            },
            {
                dataIndex: 'cbr50',
                title: 'CBR50(%)',
                valueType: 'input',
                align: 'center',
                width: 150,
                hideInSearch: true,
            },
            {
                dataIndex: 'result',
                title: '评定结果',
                align: 'center',
                valueType: 'input',
                render: (_, e) => <div>{e.result === 0 ? '合格' : e.result === 1 ? '不合格' : '未评定'}</div>,
                width: 150,
            },
            {
                dataIndex: 'labHandleTypeUuid',
                title: '处理意见',
                valueType: 'select',
                align: 'center',
                valueEnum: {},
                width: 180,
            },
            {
                dataIndex: 'remark',
                title: '意见说明',
                valueType: 'input',
                align: 'center',
                width: 180,
                hideInSearch: true,
            },
            {
                dataIndex: 'handleUserName',
                title: '审核人',
                valueType: 'input',
                align: 'center',
                width: 180,
                hideInSearch: true,
            },
            {
                dataIndex: 'handleTime',
                title: '审核时间',
                valueType: 'input',
                align: 'center',
                width: 180,
                hideInSearch: true,
            },

            { ...commonTableList.isEnabled, rules: true, align: 'center' },
            {
                dataIndex: 'equipmentNumber',
                title: '设备编号',
                valueType: 'input',
                align: 'center',
                width: 150,
                hideInSearch: true,
            },
            {
                dataIndex: 'equipmentName',
                title: '设备名称',
                valueType: 'input',
                align: 'center',
                width: 400,
                hideInSearch: true,
            },
            commonTableList.StartTime,
            commonTableList.EndTime,
        ],
    }
    if (other?.project) {
        data.columns.find(v => v.dataIndex === 'projectUuid').valueEnum = await setValueEnumData({
            url: 'getProjectList',
        })
    }
    data.columns.find(v => v.dataIndex === 'labHandleTypeUuid').valueEnum = await setValueEnumData({
        url: 'getLabHandleType',
    })

    data.columns.find(v => v.dataIndex === 'organizationUuid').valueEnum = await setValueEnumData({
        url: 'getOrganizations',
    })

    return data
}

// 某组织机构的万能机水泥数据
const LabUniversalCementMapping = async ({ uuid, other }) => {
    let data = {
        pageSize: 10,
        params: { pageIndex: 1, OrganizationUuid: uuid, isEnabled: 1 },
        get: API_LIST()[`getLabUniversalCement`],
        columns: [
            {
                dataIndex: 'projectUuid',
                title: '项目名称',
                valueType: 'select',
                valueEnum: {},
                align: 'center',
                width: 150,
                ellipsis: true,
                hideInTable: other?.project ? false : true,
                hideInSearch: other?.project ? false : true,
            },
            { ...commonTableList.organizationUuid, valueEnum: {}, align: 'center', search: false },
            {
                title: '试验组号',
                dataIndex: 'groupId',
                ellipsis: true,
                search: false,
                align: 'center',
                width: 200,
            },
            {
                title: '试验机名称',
                dataIndex: 'equipmentName',
                ellipsis: true,
                search: false,
                align: 'center',
                width: 200,
            },
            {
                title: '设备编号',
                dataIndex: 'equipmentNumber',
                ellipsis: true,
                search: false,
                align: 'center',
                width: 200,
            },
            {
                title: '试验时间',
                dataIndex: 'testDate',
                ellipsis: true,
                search: false,
                align: 'center',
                width: 200,
            },
            {
                title: '上传时间',
                dataIndex: 'uploadTime',
                ellipsis: true,
                search: false,
                align: 'center',
                width: 200,
            },
            {
                title: '操作员',
                dataIndex: 'operator',
                ellipsis: true,
                search: false,
                align: 'center',
                width: 200,
            },
            {
                title: '试件数目',
                dataIndex: 'testCount',
                ellipsis: true,
                search: false,
                align: 'center',
                width: 200,
            },
            {
                title: '试件编号',
                dataIndex: 'testCode',
                ellipsis: true,
                search: false,
                align: 'center',
                width: 200,
            },
            {
                title: '试验类型',
                dataIndex: 'testType',
                ellipsis: true,
                search: false,
                align: 'center',
                width: 200,
            },

            {
                title: '尺寸',
                dataIndex: 'cubeSideLength',
                ellipsis: true,
                search: false,
                align: 'center',
                width: 200,
            },
            {
                title: '面积',
                dataIndex: 'originalArea',
                ellipsis: true,
                search: false,
                align: 'center',
                width: 200,
            },
            {
                title: '最大力值',
                dataIndex: 'maximumForce',
                ellipsis: true,
                search: false,
                align: 'center',
                width: 200,
            },
            {
                title: '抗压强度',
                dataIndex: 'compressiveStrength',
                ellipsis: true,
                search: false,
                align: 'center',
                width: 200,
            },
            {
                title: '时间曲线',
                dataIndex: 'timeProcess',
                ellipsis: true,
                search: false,
                align: 'center',
                width: 200,
            },
            {
                title: '力值曲线',
                dataIndex: 'forceProcess',
                ellipsis: true,
                search: false,
                align: 'center',
                width: 200,
            },
            commonTableList.StartTime,
            commonTableList.EndTime,
        ],
    }

    if (other?.StateTime) data.columns.find(v => v.dataIndex === 'StartTime').initialValue = other.StateTime
    else data.columns.find(v => v.dataIndex === 'StartTime').initialValue = null
    if (other?.project) {
        data.columns.find(v => v.dataIndex === 'projectUuid').valueEnum = await setValueEnumData({
            url: 'getProjectList',
        })
    }
    data.columns.find(v => v.dataIndex === 'organizationUuid').valueEnum = await setValueEnumData({
        url: 'getOrganizations',
    })
    return data
}

// JSZX 项目列表
const JSZXProjectListMapping = async ({ uuid, ExperimentalThrEvent }) => {
    let data = {
        pageSize: 100,
        get: API_LIST()[`getProjectList`],
        columns: [
            {
                title: '项目名称',
                dataIndex: 'tableName',
                ellipsis: true,
                width: 200,
                align: 'center',
            },
            {
                title: '项目状态',
                dataIndex: 'projectStatus',
                ellipsis: true,
                align: 'center',
                initialValue: uuid?.toString() ?? null,
                valueEnum: BuiltInData.projectStatus,
                width: 200,
            },
            {
                title: '总投资额',
                dataIndex: 'totalInvestAmount',
                ellipsis: true,
                width: 200,
                search: false,
                align: 'center',
            },
            {
                title: '累计投资',
                dataIndex: 'accruingAmount',
                ellipsis: true,
                width: 200,
                search: false,
                align: 'center',
            },
            {
                title: '操作',
                dataIndex: 'options',
                search: false,
                width: 120,
                align: 'center',
                render: (_, { uuid }) => {
                    return (
                        <Button type="link" onClick={() => ExperimentalThrEvent.emit(uuid)}>
                            进入项目智慧工地
                        </Button>
                    )
                },
            },
        ],
    }
    return data
}

// 临时巡检列表
const TemporaryPatrolList = async ({ uuid, className, other }) => {
    let data = {
        pageSize: 10,
        params: { pageIndex: 1, OSecurityDate: 'desc@1' },
        get: API_LIST()[`getGetSecurityDetailData`],
        columns: [
            {
                title: '标段',
                dataIndex: 'organizationUuid',
                valueEnum: {},
                ellipsis: true,
                width: 100,
                align: 'center',
            },
            {
                title: '巡查主题',
                dataIndex: 'securityProblemTypeName',
                ellipsis: true,
                width: 300,
                align: 'center',
            },
            {
                title: '巡查日期',
                dataIndex: 'securityDate',
                valueType: 'dateTime',
                width: 200,
                align: 'center',
                search: false,
            },
            // {
            //     title: '是否逾期',
            //     dataIndex: 'is',
            //     valueType: 'select',
            //     valueEnum: {
            //         0: '否',
            //         1: '是'
            //     },
            //     search: false,
            //     width: 80,
            //     align: 'center',
            // },
            {
                title: '状态',
                dataIndex: 'auditStatus',
                valueType: 'select',
                valueEnum: BuiltInData.PatrolStatus,
                // search: false,
                width: 120,
                align: 'center',
            },
            {
                dataIndex: 'BeginSecurityDate',
                title: '开始日期',
                valueType: 'dateTime',
                hideInAdded: true,
                hideInModify: true,
                hideInTable: true,
            },
            {
                dataIndex: 'EndSecurityDate',
                title: '结束日期',
                valueType: 'dateTime',
                hideInAdded: true,
                hideInModify: true,
                hideInTable: true,
            },
            {
                title: '操作',
                dataIndex: 'options',
                search: false,
                width: 80,
                align: 'center',
                render: (_, record) => (
                    <InspectionDetailsBtn
                        key="InspectionDetailsBtn"
                        title="巡检详情"
                        data={record}
                        className={className}
                        type="security"
                    />
                ),
            },
        ],
    }
    if (other?.Project && other?.Active) {
        data.params.ProjectUuid = other.Active
        data.columns.find(v => v.dataIndex === 'organizationUuid').valueEnum = await setValueEnumData({
            url: 'getOrganizations',
            data: { projectUuid: other.Active },
        })
    }
    return data
}

// 告警项目列表
const AlarmInformation = async ({ uuid, testData }) => {
    let data = {
        pageSize: 1000,
        columns: [
            {
                title: '项目名称',
                dataIndex: 'tableName',
                ellipsis: true,
                width: 150,
                align: 'center',
            },
            {
                title: '未上传天数',
                dataIndex: 'days',
                ellipsis: true,
                render: (_, { days }) => <div> {days !== 0 ? days + '天' : '从未上传'} </div>,
                width: 100,
                align: 'center',
            },
        ],
    }
    return data
}
// 项目临时巡检列表
const OrgTemporaryPatrolList = async ({ uuid, className, other }) => {
    let data = {
        pageSize: 10,
        params: { pageIndex: 1 },
        get: API_LIST()[`getGetSecurityDetailData`],
        columns: [
            {
                title: '标段',
                dataIndex: 'organizationUuid',
                valueEnum: {},
                ellipsis: true,
                width: 100,
                align: 'center',
            },
            {
                title: '主题',
                dataIndex: 'securityProblemTypeName',
                ellipsis: true,
                width: 300,
                align: 'center',
            },
            {
                title: '日期',
                dataIndex: 'securityDate',
                valueType: 'dateTime',
                width: 150,
                align: 'center',
                search: false,
            },
            {
                title: '状态',
                dataIndex: 'auditStatus',
                valueType: 'select',
                valueEnum: BuiltInData.PatrolStatus,
                // search: false,
                width: 80,
                align: 'center',
            },
            {
                dataIndex: 'BeginSecurityDate',
                title: '开始日期',
                valueType: 'dateTime',
                hideInAdded: true,
                hideInModify: true,
                hideInTable: true,
            },
            {
                dataIndex: 'EndSecurityDate',
                title: '结束日期',
                valueType: 'dateTime',
                hideInAdded: true,
                hideInModify: true,
                hideInTable: true,
            },
            {
                title: '操作',
                dataIndex: 'options',
                search: false,
                width: 80,
                align: 'center',
                render: (_, record) => (
                    <InspectionDetailsBtn
                        key="InspectionDetailsBtn"
                        title="巡检详情"
                        data={record}
                        className={className}
                        type="security"
                    />
                ),
            },
        ],
    }
    data.columns.find(v => v.dataIndex === 'organizationUuid').valueEnum = await setValueEnumData({
        url: 'getOrganizations',
    })

    return data
}
// 质量预警列表
const QualityStatDetail = async ({ uuid, className, other }) => {
    let data = {
        pageSize: 10,
        params: { pageIndex: 1 },
        get: API_LIST()[`getJSZXQualityByProject`],
        hideInSearch: true,
        columns: [
            {
                title: '项目名称',
                dataIndex: 'projectName',
                ellipsis: true,
                width: 150,
                align: 'center',
            },
            {
                title: '自检评分',
                dataIndex: 'labSelfScore',
                ellipsis: true,
                width: 150,
                align: 'center',
            },
            {
                title: '抽检评分',
                dataIndex: 'labSamplingScore',
                width: 150,
                align: 'center',
            },
            {
                title: '第三方评分',
                dataIndex: 'labDsfScore',
                align: 'center',
                width: 150,
            },
        ],
    }
    return data
}

// ! 魏 项目沥青预警明细
const AsphaltMixingStationDetail = async ({ uuid, className, other }) => {
    let data = {
        pageSize: 10,
        params: { pageIndex: 1, matName: uuid },
        get: API_LIST()[`getAsphaltMixingStationExceededData`],
        columns: [
            {
                dataIndex: 'projectUuid',
                title: '项目名称',
                valueType: 'select',
                valueEnum: {},
                align: 'center',
                width: 150,
                ellipsis: true,
                hideInTable: other?.project ? false : true,
                hideInSearch: other?.project ? false : true,
            },
            { ...commonTableList.organizationUuid, valueEnum: {}, align: 'center', search: false },
            {
                dataIndex: 'alarmlve',
                title: '报警等级',
                valueType: 'select',
                valueEnum: BuiltInData.alarmlve,
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'uporDown',
                title: '报警类型',
                valueType: 'select',
                valueEnum: BuiltInData.uporDown,
                align: 'center',
                width: 150,
            },
            {
                title: '出料时间',
                dataIndex: 'dischargingTime',
                valueType: 'dateTime',
                hideInSearch: true,
                ellipsis: true,
                search: false,
                align: 'center',
            },
            {
                dataIndex: 'equipmentCode',
                title: '设备编号',
                valueType: 'input',
                hideInSearch: true,
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'engineeringName',
                title: '工程名称',
                valueType: 'input',
                align: 'center',
                width: 150,
            },
            {
                title: '施工地点',
                dataIndex: 'constructionSite',
                ellipsis: true,
                search: false,
                align: 'center',
            },
            {
                dataIndex: 'layerPosition',
                title: '使用层位',
                valueType: 'select',
                align: 'center',
                valueEnum: BuiltInData.layerPosition,
                width: 150,
            },
            {
                dataIndex: 'proportionIdGet',
                title: '配合比编号',
                valueType: 'input',
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'temperature',
                title: '出料温度',
                valueType: 'input',
                hideInSearch: true,
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'asphaltAggregateRatioAct',
                title: '油石比(实际)',
                valueType: 'input',
                hideInSearch: true,
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'asphaltAct',
                title: '施工沥青用量(实际)',
                valueType: 'input',
                hideInSearch: true,
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'sand1Act',
                title: '骨料1(实际)',
                valueType: 'input',
                hideInSearch: true,
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'sand2Act',
                title: '骨料2(实际)',
                valueType: 'input',
                hideInSearch: true,
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'gravel1Act',
                title: '骨料3(实际)',
                valueType: 'input',
                hideInSearch: true,
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'gravel2Act',
                title: '骨料4(实际)',
                valueType: 'input',
                hideInSearch: true,
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'gravel3Act',
                title: '骨料5(实际)',
                valueType: 'input',
                hideInSearch: true,
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'gravel4Act',
                title: '骨料6(实际)',
                valueType: 'input',
                hideInSearch: true,
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'slagPowderAct',
                title: '矿粉(实际)',
                valueType: 'input',
                hideInSearch: true,
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'cement1Act',
                title: '水泥(实际)',
                valueType: 'input',
                hideInSearch: true,
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'recycledMaterialAct',
                title: '再生料(实际)',
                valueType: 'input',
                hideInSearch: true,
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'isEnabled',
                title: '状态',
                hideInSearch: true,
                valueType: 'select',
                valueEnum: BuiltInData.isEnabled,
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'handleTime',
                title: '审核时间',
                valueType: 'input',
                width: 180,
                align: 'center',
                hideInSearch: true,
            },
            {
                dataIndex: 'handleUserName',
                title: '审核人',
                hideInSearch: true,
                valueType: 'input',
                align: 'center',
                width: 180,
            },
            {
                dataIndex: 'remark',
                title: '意见说明',
                valueType: 'input',
                hideInSearch: true,
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'mixPlatHandleTypeName',
                title: '问题类别名称',
                valueType: 'input',
                hideInSearch: true,
                align: 'center',
                width: 150,
            },
            commonTableList.StartTime,
            commonTableList.EndTime,
        ],
    }
    if (other?.project) {
        data.columns.find(v => v.dataIndex === 'projectUuid').valueEnum = await setValueEnumData({
            url: 'getProjectList',
        })
    }

    data.columns.find(v => v.dataIndex === 'organizationUuid').valueEnum = await setValueEnumData({
        url: 'getOrganizations',
    })

    return data
}
// ! 魏  项目水泥预警明细
const CementMixingStationExceededDatil = async ({ uuid, className, other }) => {
    let data = {
        pageSize: 10,
        params: { pageIndex: 1, matName: uuid },
        get: API_LIST()[`getCementMixingStationExceededData`],
        columns: [
            {
                dataIndex: 'projectUuid',
                title: '项目名称',
                valueType: 'select',
                valueEnum: {},
                align: 'center',
                width: 150,
                ellipsis: true,
                hideInTable: other?.project ? false : true,
                hideInSearch: other?.project ? false : true,
            },
            {
                title: '标段',
                dataIndex: 'organizationUuid',
                valueEnum: {},
                ellipsis: true,
                width: 100,
                align: 'center',
            },
            {
                dataIndex: 'alarmlve',
                title: '报警等级',
                valueType: 'select',
                valueEnum: BuiltInData.alarmlve,
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'uporDown',
                title: '报警类型',
                valueType: 'select',
                valueEnum: BuiltInData.uporDown,
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'dischargingTime',
                title: '出料时间',
                valueType: 'input',
                hideInSearch: true,
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'equipmentCode',
                title: '设备编号',
                valueType: 'input',
                hideInSearch: true,
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'projectName',
                title: '工程名称',
                valueType: 'input',
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'pouringPosition',
                title: '浇筑部位',
                valueType: 'input',
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'strengthGrade',
                title: '强度等级',
                valueType: 'input',
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'quantityAct',
                title: '实际方量(m³)',
                hideInSearch: true,
                valueType: 'input',
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'waterAct',
                title: '水(kg)',
                hideInSearch: true,
                valueType: 'input',
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'cementAct',
                title: '水泥(kg)',
                hideInSearch: true,
                valueType: 'input',
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'sandAct',
                title: '砂(kg)',
                hideInSearch: true,
                valueType: 'input',
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'gravelAct',
                title: '碎石(kg)',
                hideInSearch: true,
                valueType: 'input',
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'flyashAct',
                title: '粉煤灰(kg)',
                hideInSearch: true,
                valueType: 'input',
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'slagPowderAct',
                title: '矿粉(kg)',
                hideInSearch: true,
                valueType: 'input',
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'waterReducerAct',
                title: '减水剂(kg)',
                hideInSearch: true,
                valueType: 'input',
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'excessState',
                title: '是否超标',
                hideInSearch: true,
                valueType: 'select',
                valueEnum: BuiltInData.excessState,
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'isEnabled',
                title: '状态',
                hideInSearch: true,
                valueType: 'select',
                valueEnum: BuiltInData.isEnabled,
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'handleTime',
                title: '审核时间',
                valueType: 'select',
                hideInSearch: true,
                valueEnum: {},
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'handleUserName',
                title: '审核人',
                valueType: 'select',
                hideInSearch: true,
                valueEnum: {},
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'remark',
                title: '意见说明',
                valueType: 'input',
                width: 180,
                hideInSearch: true,
                align: 'center',
            },
            commonTableList.StartTime,
            commonTableList.EndTime,
        ],
    }
    if (other?.project) {
        data.columns.find(v => v.dataIndex === 'projectUuid').valueEnum = await setValueEnumData({
            url: 'getProjectList',
        })
    }
    data.columns.find(v => v.dataIndex === 'organizationUuid').valueEnum = await setValueEnumData({
        url: 'getOrganizations',
    })

    return data
}

// ! 魏 项目沥青产量明细
const GettAsphaltMixingStationDatil = async ({ uuid, className, other }) => {
    let data = {
        pageSize: 10,
        params: {
            pageIndex: 1,
            OrganizationUuid: uuid,
            ODischargingTime: 'desc@1',
        },
        get: API_LIST()[`getAsphaltMixingStationData`],
        columns: [
            {
                title: '标段',
                dataIndex: 'organizationUuid',
                valueEnum: {},
                ellipsis: true,
                width: 100,
                align: 'center',
            },
            {
                title: '出料时间',
                dataIndex: 'dischargingTime',
                valueType: 'dateTime',
                ellipsis: true,
                search: false,
                align: 'center',
                hideInSearch: true,
            },
            {
                dataIndex: 'equipmentCode',
                title: '设备编号',
                valueType: 'input',
                hideInSearch: true,
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'engineeringName',
                title: '工程名称',
                valueType: 'input',
                width: 150,
                align: 'center',
            },
            {
                title: '施工地点',
                dataIndex: 'constructionSite',
                ellipsis: true,
                search: false,
                align: 'center',
            },
            {
                dataIndex: 'layerPosition',
                title: '使用层位',
                valueType: 'select',
                valueEnum: BuiltInData.layerPosition,
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'proportionIdGet',
                title: '配合比编号',
                valueType: 'input',
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'temperature',
                title: '出料温度',
                valueType: 'input',
                hideInSearch: true,
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'asphaltAggregateRatioAct',
                title: '油石比(实际)',
                valueType: 'input',
                hideInSearch: true,
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'asphaltAct',
                title: '施工沥青用量(实际)',
                valueType: 'input',
                hideInSearch: true,
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'sand1Act',
                title: '骨料1(实际)',
                valueType: 'input',
                hideInSearch: true,
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'sand2Act',
                title: '骨料2(实际)',
                valueType: 'input',
                hideInSearch: true,
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'gravel1Act',
                title: '骨料3(实际)',
                valueType: 'input',
                hideInSearch: true,
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'gravel2Act',
                title: '骨料4(实际)',
                valueType: 'input',
                hideInSearch: true,
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'gravel3Act',
                title: '骨料5(实际)',
                valueType: 'input',
                hideInSearch: true,
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'gravel4Act',
                title: '骨料6(实际)',
                valueType: 'input',
                hideInSearch: true,
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'slagPowderAct',
                title: '矿粉(实际)',
                valueType: 'input',
                hideInSearch: true,
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'cement1Act',
                title: '水泥(实际)',
                valueType: 'input',
                hideInSearch: true,
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'recycledMaterialAct',
                title: '再生料(实际)',
                valueType: 'input',
                hideInSearch: true,
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'handleTime',
                title: '审核时间',
                valueType: 'input',
                width: 180,
                hideInSearch: true,
                align: 'center',
            },
            {
                dataIndex: 'handleUserName',
                title: '审核人',
                hideInSearch: true,
                valueType: 'input',
                width: 180,
                align: 'center',
            },
            {
                dataIndex: 'remark',
                title: '意见说明',
                valueType: 'input',
                hideInSearch: true,
                width: 150,
                align: 'center',
            },
            commonTableList.StartTime,
            commonTableList.EndTime,
        ],
    }

    data.columns.find(v => v.dataIndex === 'organizationUuid').valueEnum = await setValueEnumData({
        url: 'getOrganizations',
    })

    return data
}
// ! 魏  项目水泥产量明细
const CementMixingStationGroupDatail = async ({ uuid, className, other }) => {
    let data = {
        pageSize: 10,
        params: {
            pageIndex: 1,
            OrganizationUuid: uuid,
            ODischargingTime: 'desc@1',
        },
        get: API_LIST()[`getCementMixingStationData`],
        columns: [
            {
                title: '标段',
                dataIndex: 'organizationUuid',
                valueEnum: {},
                ellipsis: true,
                width: 100,
                align: 'center',
            },
            {
                dataIndex: 'dischargingTime',
                title: '出料时间',
                valueType: 'input',
                hideInSearch: true,
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'equipmentCode',
                title: '设备编号',
                valueType: 'input',
                hideInSearch: true,
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'projectName',
                title: '工程名称',
                valueType: 'input',
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'pouringPosition',
                title: '浇筑部位',
                valueType: 'input',
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'strengthGrade',
                title: '强度等级',
                valueType: 'input',
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'quantityAct',
                title: '实际方量(m³)',
                hideInSearch: true,
                valueType: 'input',
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'waterAct',
                title: '水(kg)',
                hideInSearch: true,
                valueType: 'input',
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'cementAct',
                title: '水泥(kg)',
                hideInSearch: true,
                valueType: 'input',
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'sandAct',
                title: '砂(kg)',
                hideInSearch: true,
                valueType: 'input',
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'gravelAct',
                title: '碎石(kg)',
                hideInSearch: true,
                valueType: 'input',
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'flyashAct',
                title: '粉煤灰(kg)',
                hideInSearch: true,
                valueType: 'input',
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'slagPowderAct',
                title: '矿粉(kg)',
                hideInSearch: true,
                valueType: 'input',
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'waterReducerAct',
                title: '减水剂(kg)',
                hideInSearch: true,
                valueType: 'input',
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'excessState',
                title: '是否超标',
                hideInSearch: true,
                valueType: 'select',
                valueEnum: BuiltInData.excessState,
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'handleTime',
                title: '审核时间',
                valueType: 'select',
                hideInSearch: true,
                valueEnum: {},
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'handleUserName',
                title: '审核人',
                valueType: 'select',
                hideInSearch: true,
                valueEnum: {},
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'remark',
                title: '意见说明',
                valueType: 'input',
                width: 180,
                hideInSearch: true,
                align: 'center',
            },
            commonTableList.StartTime,
            commonTableList.EndTime,
        ],
    }
    data.columns.find(v => v.dataIndex === 'organizationUuid').valueEnum = await setValueEnumData({
        url: 'getOrganizations',
    })

    return data
}

// ! 魏  建设中心沥青产量明细
const GettJSZXAsphaltMixingStationDatil = async ({ uuid, className, other }) => {
    let data = {
        pageSize: 10,
        params: {
            pageIndex: 1,
            projectUuid: uuid,
        },
        get: API_LIST()[`getAsphaltMixingStationData`],
        columns: [
            {
                title: '标段',
                dataIndex: 'organizationUuid',
                valueEnum: {},
                ellipsis: true,
                width: 100,
                align: 'center',
            },
            {
                title: '出料时间',
                dataIndex: 'dischargingTime',
                valueType: 'dateTime',
                ellipsis: true,
                search: false,
                align: 'center',
                hideInSearch: true,
            },
            {
                dataIndex: 'equipmentCode',
                title: '设备编号',
                valueType: 'input',
                hideInSearch: true,
                align: 'center',
                width: 150,
            },
            {
                dataIndex: 'engineeringName',
                title: '工程名称',
                valueType: 'input',
                width: 150,
                align: 'center',
            },
            {
                title: '施工地点',
                dataIndex: 'constructionSite',
                ellipsis: true,
                search: false,
                align: 'center',
            },
            {
                dataIndex: 'layerPosition',
                title: '使用层位',
                valueType: 'select',
                valueEnum: BuiltInData.layerPosition,
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'proportionIdGet',
                title: '配合比编号',
                valueType: 'input',
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'temperature',
                title: '出料温度',
                valueType: 'input',
                hideInSearch: true,
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'asphaltAggregateRatioAct',
                title: '油石比(实际)',
                valueType: 'input',
                hideInSearch: true,
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'asphaltAct',
                title: '施工沥青用量(实际)',
                valueType: 'input',
                hideInSearch: true,
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'sand1Act',
                title: '骨料1(实际)',
                valueType: 'input',
                hideInSearch: true,
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'sand2Act',
                title: '骨料2(实际)',
                valueType: 'input',
                hideInSearch: true,
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'gravel1Act',
                title: '骨料3(实际)',
                valueType: 'input',
                hideInSearch: true,
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'gravel2Act',
                title: '骨料4(实际)',
                valueType: 'input',
                hideInSearch: true,
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'gravel3Act',
                title: '骨料5(实际)',
                valueType: 'input',
                hideInSearch: true,
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'gravel4Act',
                title: '骨料6(实际)',
                valueType: 'input',
                hideInSearch: true,
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'slagPowderAct',
                title: '矿粉(实际)',
                valueType: 'input',
                hideInSearch: true,
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'cement1Act',
                title: '水泥(实际)',
                valueType: 'input',
                hideInSearch: true,
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'recycledMaterialAct',
                title: '再生料(实际)',
                valueType: 'input',
                hideInSearch: true,
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'handleTime',
                title: '审核时间',
                valueType: 'input',
                width: 180,
                hideInSearch: true,
                align: 'center',
            },
            {
                dataIndex: 'handleUserName',
                title: '审核人',
                hideInSearch: true,
                valueType: 'input',
                width: 180,
                align: 'center',
            },
            {
                dataIndex: 'remark',
                title: '意见说明',
                valueType: 'input',
                hideInSearch: true,
                width: 150,
                align: 'center',
            },
            commonTableList.StartTime,
            commonTableList.EndTime,
        ],
    }
    data.columns.find(v => v.dataIndex === 'organizationUuid').valueEnum = await setValueEnumData({
        url: 'getOrganizations',
    })

    return data
}
// ! 魏  建设中心水泥产量明细
const CementJSZXMixingStationGroupDatail = async ({ uuid, className, other }) => {
    let data = {
        pageSize: 10,
        params: {
            pageIndex: 1,
            projectUuid: uuid,
        },
        get: API_LIST()[`getCementMixingStationData`],
        columns: [
            {
                title: '标段',
                dataIndex: 'organizationUuid',
                valueEnum: {},
                ellipsis: true,
                width: 100,
                align: 'center',
            },
            {
                dataIndex: 'dischargingTime',
                title: '出料时间',
                valueType: 'input',
                hideInSearch: true,
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'equipmentCode',
                title: '设备编号',
                valueType: 'input',
                hideInSearch: true,
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'projectName',
                title: '工程名称',
                valueType: 'input',
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'pouringPosition',
                title: '浇筑部位',
                valueType: 'input',
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'strengthGrade',
                title: '强度等级',
                valueType: 'input',
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'quantityAct',
                title: '实际方量(m³)',
                hideInSearch: true,
                valueType: 'input',
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'waterAct',
                title: '水(kg)',
                hideInSearch: true,
                valueType: 'input',
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'cementAct',
                title: '水泥(kg)',
                hideInSearch: true,
                valueType: 'input',
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'sandAct',
                title: '砂(kg)',
                hideInSearch: true,
                valueType: 'input',
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'gravelAct',
                title: '碎石(kg)',
                hideInSearch: true,
                valueType: 'input',
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'flyashAct',
                title: '粉煤灰(kg)',
                hideInSearch: true,
                valueType: 'input',
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'slagPowderAct',
                title: '矿粉(kg)',
                hideInSearch: true,
                valueType: 'input',
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'waterReducerAct',
                title: '减水剂(kg)',
                hideInSearch: true,
                valueType: 'input',
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'excessState',
                title: '是否超标',
                hideInSearch: true,
                valueType: 'select',
                valueEnum: BuiltInData.excessState,
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'handleTime',
                title: '审核时间',
                valueType: 'select',
                hideInSearch: true,
                valueEnum: {},
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'handleUserName',
                title: '审核人',
                valueType: 'select',
                hideInSearch: true,
                valueEnum: {},
                width: 150,
                align: 'center',
            },
            {
                dataIndex: 'remark',
                title: '意见说明',
                valueType: 'input',
                width: 180,
                hideInSearch: true,
                align: 'center',
            },
            commonTableList.StartTime,
            commonTableList.EndTime,
        ],
    }
    data.columns.find(v => v.dataIndex === 'organizationUuid').valueEnum = await setValueEnumData({
        url: 'getOrganizations',
    })

    return data
}

// 八达建设期项目资金支出明细表
const BaDaConstructionPayModal = async ({ uuid }) => {
    let data = {
        pageSize: 10,
        get: API_LIST()[`getProjectBuildingPaymentSummaryList`],
        params: { pageIndex: 1, organizationUuid: uuid },
        columns: [
            { ...commonTableList.StartDate },
            { ...commonTableList.EndDate },
            {
                title: '日期',
                dataIndex: 'date',
                valueType: 'date',
                ellipsis: true,
                width: 200,
                search: false,
                align: 'center',
            },
            {
                title: '建筑安装工程费',
                dataIndex: 'installEngineeringPayment',
                ellipsis: true,
                width: 200,
                search: false,
                align: 'center',
            },
            {
                title: '征地拆迁补偿费',
                dataIndex: 'landExpropriationPayment',
                ellipsis: true,
                width: 200,
                search: false,
                align: 'center',
            },
            {
                title: '工程建设其他费用',
                dataIndex: 'otherPayment',
                ellipsis: true,
                width: 200,
                search: false,
                align: 'center',
            },
            {
                title: '预备费',
                dataIndex: 'preparationPayment',
                ellipsis: true,
                width: 200,
                search: false,
                align: 'center',
            },
            {
                title: '建设期贷款利息',
                dataIndex: 'loanInterestPayment',
                ellipsis: true,
                width: 200,
                search: false,
                align: 'center',
            },
            {
                title: '合计',
                dataIndex: 'g',
                ellipsis: true,
                width: 200,
                search: false,
                align: 'center',
                render: (_, e) => {
                    const {
                        installEngineeringPayment: regularTwo,
                        landExpropriationPayment: regularThr,
                        otherPayment: regularFou,
                        preparationPayment: regularFiv,
                        loanInterestPayment: regularSix,
                    } = e
                    return <div>{regularTwo + regularThr + regularFou + regularFiv + regularSix}</div>
                },
            },
        ],
    }
    return data
}

// 八达运营期项目资金支出明细表
const BaDaOperationPayModal = async ({ uuid, testData }) => {
    let data = {
        pageSize: 10,
        get: API_LIST()[`getProjectOperationPaymentSummaryList`],
        params: { pageIndex: 1, organizationUuid: uuid },
        columns: [
            { ...commonTableList.StartDate },
            { ...commonTableList.EndDate },
            {
                title: '日期',
                dataIndex: 'date',
                valueType: 'date',
                ellipsis: true,
                search: false,
                width: 200,
                align: 'center',
            },
            {
                title: '养护费用',
                dataIndex: 'maintainPayment',
                ellipsis: true,
                width: 200,
                search: false,
                align: 'center',
            },
            {
                title: '偿还贷款',
                dataIndex: 'loanPayment',
                ellipsis: true,
                width: 200,
                search: false,
                align: 'center',
            },
            {
                title: '管理费用',
                dataIndex: 'managePayment',
                ellipsis: true,
                width: 200,
                search: false,
                align: 'center',
            },
            {
                title: '税费',
                dataIndex: 'taxPayment',
                ellipsis: true,
                width: 200,
                search: false,
                align: 'center',
            },
            {
                title: '股东分红',
                dataIndex: 'shareholderPayment',
                ellipsis: true,
                width: 200,
                search: false,
                align: 'center',
            },
            {
                title: '合计',
                dataIndex: 'g',
                ellipsis: true,
                width: 200,
                search: false,
                render: (_, e) => {
                    const { maintainPayment, loanPayment, managePayment, taxPayment, shareholderPayment } = e
                    return <div>{maintainPayment + loanPayment + managePayment + taxPayment + shareholderPayment}</div>
                },
                align: 'center',
            },
        ],
    }
    return data
}

// 八达运营期政府付费明细表
const BaDaOperationGovernmentModal = async ({ uuid, testData }) => {
    let data = {
        pageSize: 10,
        get: API_LIST()[`getProjectOperationPaymentDetailList`],
        params: { pageIndex: 1, organizationUuid: uuid },
        columns: [
            {
                dataIndex: 'yearMonth',
                title: '年月',
                valueType: 'Date',
                picker: 'month',
                rules: true,
                search: false,
                align: 'center',
                width: 180,
            },
            {
                dataIndex: 'loanPrincipalCopeAmount',
                title: '贷款本金应收金额',
                valueType: 'inputNumber',
                rules: true,
                search: false,
                align: 'center',
                width: 180,
            },
            {
                dataIndex: 'loanPrincipalPaidAmount',
                title: '贷款本金已收金额',
                valueType: 'inputNumber',
                rules: true,
                search: false,
                align: 'center',
                width: 180,
            },
            {
                dataIndex: 'loanInterestCopeAmount',
                title: '贷款利息应收金额',
                valueType: 'inputNumber',
                rules: true,
                search: false,
                align: 'center',
                width: 180,
            },
            {
                dataIndex: 'loanInterestPaidAmount',
                title: '贷款利息已收金额',
                valueType: 'inputNumber',
                rules: true,
                search: false,
                align: 'center',
                width: 180,
            },
            {
                dataIndex: 'capitalPrincipalCopeAmount',
                title: '资本金本金应收金额',
                valueType: 'inputNumber',
                rules: true,
                search: false,
                align: 'center',
                width: 180,
            },
            {
                dataIndex: 'capitalPrincipalPaidAmount',
                title: '资本金本金已收金额',
                valueType: 'inputNumber',
                rules: true,
                search: false,
                align: 'center',
                width: 180,
            },
            {
                dataIndex: 'capitalInterestCopeAmount',
                title: '资本金收益应收金额',
                valueType: 'inputNumber',
                rules: true,
                search: false,
                align: 'center',
                width: 180,
            },
            {
                dataIndex: 'capitalInterestPaidAmount',
                title: '资本金收益已收金额',
                valueType: 'inputNumber',
                rules: true,
                search: false,
                align: 'center',
                width: 180,
            },
            {
                dataIndex: 'operationFeeCopeAmount',
                title: '运营养护费应收金额',
                valueType: 'inputNumber',
                rules: true,
                search: false,
                align: 'center',
                width: 180,
            },
            {
                dataIndex: 'operationFeePaidAmount',
                title: '运营养护费已收金额',
                valueType: 'inputNumber',
                rules: true,
                search: false,
                align: 'center',
                width: 180,
            },
        ],
    }
    return data
}

export const JSZXProjectSort = async ({ ExperimentalThrEvent }) => {
    const monthApi = await axios.get(API_LIST()['getScoreManagementGetScoreYearMonth'])
    const { list } = monthApi.data
    const [{ yearMonth }] = list
    let monthList = {}
    list.forEach(({ yearMonth }) => (monthList = { ...monthList, [yearMonth]: yearMonth }))

    let data = {
        pageSize: 100,
        abc: true,
        scroll: { x: 100, y: 240 },
        get: API_LIST()[`getQualityGetProjectScoreSortId`],
        params: {},
        columns: [
            {
                dataIndex: 'code',
                title: '序号',
                valueType: 'input',
                align: 'center',
                hideInSearch: true,
                width: 60,
            },
            {
                dataIndex: 'projectName',
                title: '项目名称',
                valueType: 'input',
                align: 'center',
                hideInSearch: true,
                width: 140,
            },
            {
                dataIndex: 'projectTypeCode',
                title: '类型',
                valueType: 'select',
                valueEnum: { ChuanTong: '施工总承包项目', PPP: 'PPP项目' },
                align: 'center',
                width: 100,
            },
            {
                dataIndex: 'yearMonth',
                title: '年月',
                initialValue: yearMonth,
                valueType: 'select',
                valueEnum: monthList,
                align: 'center',
                width: 80,
            },

            {
                dataIndex: 'projectScore',
                title: `分数`,
                valueType: 'input',
                hideInSearch: true,
                align: 'center',
                width: 80,
            },
            {
                title: '操作',
                valueType: 'systemOperation',
                fixed: 'right',
                align: 'center',
                width: 100,
                hideInSearch: true,
                hideInAdded: true,
                hideInModify: true,
                render: (_, record) => {
                    return [
                        <Button key="default" type="link" onClick={() => ExperimentalThrEvent.emit(record)}>
                            查看详情
                        </Button>,
                    ]
                },
            },
        ],
    }

    return data
}

export const JSZXProjectSortTwo = async ({ ExperimentalThrEvent }) => {
    const monthApi = await axios.get(API_LIST()['getScoreManagementGetScoreYearMonth'])
    const { list } = monthApi.data
    const [{ yearMonth }] = list
    let monthList = {}
    list.forEach(({ yearMonth }) => (monthList = { ...monthList, [yearMonth]: yearMonth }))
    let data = {
        pageSize: 100,
        abc: true,
        // hideInSearch: true,
        scroll: { x: 200, y: 240 },
        get: API_LIST()[`getQualityGetWinningBidderScoreSortId`],
        params: {},
        columns: [
            {
                dataIndex: 'code',
                title: '序号',
                valueType: 'input',
                align: 'center',
                hideInSearch: true,
                width: 60,
            },
            {
                dataIndex: 'winningBidderName',
                title: '中标单位',
                valueType: 'input',
                align: 'center',
                width: 200,
                hideInSearch: true,
            },
            {
                dataIndex: 'yearMonth',
                title: '年月',
                initialValue: yearMonth,
                valueType: 'select',
                valueEnum: monthList,
                align: 'center',
                width: 80,
            },
            {
                dataIndex: 'winningBidderScore',
                title: `分数`,
                valueType: 'input',
                align: 'center',
                width: 80,
                hideInSearch: true,
            },
            {
                title: '操作',
                valueType: 'systemOperation',
                fixed: 'right',
                align: 'center',
                width: 100,
                hideInSearch: true,
                hideInAdded: true,
                hideInModify: true,
                render: (_, record) => {
                    return [
                        <Button key="default" type="link" onClick={() => ExperimentalThrEvent.emit(record)}>
                            查看详情
                        </Button>,
                    ]
                },
            },
        ],
    }
    return data
}

export const TableMapping = {
    AlarmInformation,
    securitySlopeLeft,
    ProjectCompanyMonthReport,
    SecondaryCementMixPlat,
    SecondaryGetBeamProduceSum,
    SecondaryGetBeamProduceRecords,
    SecondaryPersonnelTemplateNew,
    SecondaryPersonnelTemplate,
    SecondaryPersonnelTemplateTwo,
    SecondaryPersonnelTemplateThr,
    SecondaryTemperatureTemplate,
    SecondaryEpidemicTemplate,
    SecondaryWorkingList,
    SecondaryWorkingProcedure,
    SecondaryInspectionTemplate,
    InvestMonthStatListByInvestList,
    ImageProgressPopulation,
    LabStressMachineMapping,
    LabStressMachineMappingTwo,
    LabHumitureMapping,
    LabMarshallStabilityMapping,
    LabPenetrationMapping,
    LabSofteningPointMapping,
    LabDuctilityMapping,
    LabReboundHammerMapping,
    LabCoverProtectorMapping,
    LabPmsTesterCbrMapping,
    LabUniversalCementMapping,
    LabUniversalRebarMapping,
    TemporaryPatrolList,
    JSZXProjectListMapping,
    QualityStatDetail,
    GettAsphaltMixingStationDatil,
    GettJSZXAsphaltMixingStationDatil,
    CementMixingStationExceededDatil,
    AsphaltMixingStationDetail,
    BaDaConstructionPayModal,
    BaDaOperationPayModal,
    BaDaOperationGovernmentModal,
    CementMixingStationGroupDatail,
    CementJSZXMixingStationGroupDatail,
    OrgTemporaryPatrolList,
    MeterageAttachmentTableList,
    PlanStatAttachmentTableList,
    JSZXProjectSort,
    JSZXProjectSortTwo,
}
